banner

[Rule] Rules  [Home] Main Forum  [Portal] Portal  
[Members] Member Listing  [Statistics] Statistics  [Search] Search  [Reading Room] Reading Room 
[Register] Register  
[Login] Loginhttp  | https  ]
 
Forum Index Thảo luận việc định hướng Làm thế nào để trờ thành một "Siêu Lập trình viên"?  XML
  [Article]   Làm thế nào để trờ thành một "Siêu Lập trình viên"? 14/05/2014 00:08:03 (+0700) | #1 | 280638
Levis
Member

[Minus]    0    [Plus]
Joined: 14/03/2012 10:31:11
Messages: 27
Location: REPT
Offline
[Profile] [PM] [WWW] [MSN]
Gần đây tôi có đọc được 1 câu hỏi khá "trẻ trâu" nhưng lại rất thú vị:"Làm thế nào để trở thành 1 "siêu Lập trình viên"?". Nhiều người mới bắt đầu học về công nghệ thông tin thường hay hỏi và băn khoăn, nhằm là mơ ước biến thành 1 ông nào đó pro tầm cỡ bill gates hay đại loại thế. Nhưng này, theo quan điểm của cá nhân tôi thì Bill Gates nên được gọi là một nhà doanh nhân thành đạt hơn là một lập trình viên tầm cỡ. Những lập trình viên có thể nói là tầm cỡ thì nên nhắc đến những cái tên như Linus Torvalds hay Dennis Ritchie sẽ phù hợp hơn.


Quay trở lại với câu hỏi "Làm thế nào để trở thành 1 "siêu lập trình viên?"". Lúc đầu tôi vẫn cho rằng câu hỏi này thực sự rất viển vông bởi vì cái ham muốn điên rồ của cái người hỏi câu này (đã được tôi nói ở phía trên). Tuy nhiên tôi nghĩ lại rằng:"Ở, kể ra cũng có gì đáng để bàn ở đây đó chứ", thế nên tôi quyết định viết cái note này, không phải để chỉ bạn cách làm sao để trờ thành như Bill Gates, tiền không đếm mà toàn tính theo cân (kg), mà sẽ giúp bạn định hướng con đường mình cần đi để - cho dù không trở nên nổi tiếng đi chăng nữa - thì cũng đủ để bạn biến mình thành 1 cái gì đó "pro". Cũng nên lưu ý 1 chút nữa là trong bài viết này tôi sẽ không nói về các ngôn ngữ lập trình, bởi vì mỗi ngôn ngữ có đặc trưng và sức mạnh riêng của chúng, không có ngôn ngữ nào hoàn hảo cả, mà tối sẽ chỉ nêu ra hướng bạn cần đi để trở thành một "pro", theo các suy nghĩ, kinh nghiệm và quan điểm của cá nhân tôi (mặc dù tôi là dân tài chính chứ không phải theo công nghệ thông tin, hoàn toàn là 1 "trái tim bên lề"smilie. Sẵn sàng chưa, hãy bắt đầu nào.

Con đường của tôi chọn là:
Programming -> Debugging -> System Programming/Kernel Programming -> Hacking and security

Tôi sẽ phân tích từng giai đoạn một ở dưới đây

1.Programming


Đã gọi là "siêu lập trình viên" rồi thì chắc chắn là phải biết lập trình chứ. Programming ở đây, bạn cần phải nắm THẬT vững một ngôn ngữ nào đó. Và hãy tiến hành code các ứng dụng, tiện ích từ nhỏ cho đến lớn, trước hết là phục vụ nhu cầu của mình đã, rồi phục vụ nhu cầu của người khác. VD như cứ đi dần từ việc viết mấy cái chương trình để lòe con gái, lòe cái lũ bạn "cờ hó" đến việc viết các ứng dụng thiết thực hơn như quản lý bán hàng, kế toán hoặc các phần mềm xử lý và mô phỏng đồ họa (cớ như photoshop, autocad hay premier thì càng tốt). Và ngoài ngôn ngữ mình thuần thục ra, hãy bỏ thêm thời gian để tìm hiểu và sử dụng một vài ngôn ngữ khác nữa, càng nhiều thì càng tốt, nhưng hay lượng sức mình kẻo bị "tẩu hỏa nhập ma". Việc lập trình này giúp cho bạn có kiến thức vững vàng về các ngôn ngữ lập trình và các thuật toán, giải thuật cũng như cách xây dựng 1 chương trình.

2.Debugging

Thực chất thì debugging là 1 phần không thể tách rời của programming, nhưng trong quan điểm của tôi thì tôi vẫn chia nó ra thành 1 phần riêng, bởi vì tính quan trọng của nó. Nhiều người (đặc biệt là các bạn mới học lập trình) hay có suy nghĩ kiểu "debug chỉ là gỡ lỗi cho chương trình thôi, mục đích cuối cùng cũng chỉ là tìm cách để bấm F9/F5 là chương trình chạy phà phà mà không có lỗi", nhưng đối với cá nhân tôi, debug còn mang theo nhiều thứ hơn là việc gỡ lỗi. Bằng việc debug, tôi nhìn thấy được máy tính đang hoạt động như thế nào với mỗi đoạn code được viết ra, điều này khiến tôi hiểu thêm rất nhiều thứ về hoạt động của máy tính. Việc tôi nhìn thấy cái cách mà chương trình gọi hàm như thế nào, push và pop các giá trị từ stack như thế nào, các registers và các flag của cpu thay đổi thế nào, các ô nhớ trong memory lưu trữ ra sao, hay chỉ đơn giản là câu lệnh assembly trông như thế nào khi chuyển từ các ngôn ngữ bậc cao sang... Tất cả chúng đều rất thú vị. Tôi vẫn debug cả tất cả các chương trình, kể cả chúng có lỗi hay không có lỗi, chỉ để quan sát những điều trên, thật sự rất hữu ích cho việc lập trình của tôi, để tôi không còn đặt những câu hỏi đại loại như "thế nào là 32 bit?/ thế nào là 64 bit?" và nhận được những câu trả lời rất chi là uyên thâm, đầy đủ đến mức hoàn hảo, mà cuối cùng vẫn chả hiểu thực sự nó là cái gì. Nói chung, việc debug giúp chúng ta có một cái nhìn thật sâu sắc và toàn diện hơn về cấu trúc máy tính, cách hoạt động của một chương trình chứ không chỉ dừng lại ở việc gỡ lỗi đơn thuần
P/s cho phần này: có vài lần tôi dùng một vài IDE hiện đại ngày nay thấy việc debug bằng các debugger tích hợp trong IDE khá là tẻ nhạt khi đa số chỉ cho phép xem và trace theo giá trị của các biến. Tuy vẫn có thể debug kèm theo nhiều thông tin hơn, nhưng như vậy thì vẫn khá là nhạt, tôi vẫn thích dùng mấy cái "hàng nóng" như olly hay gdb hơn, có vẻ rất đã tay smilie. Có lẽ nào khi debug bằng các IDE quá nhiều nên bây giờ có nhiều người không coi trọng việc debug (thậm chí có nhiều người coi debug chỉ như một thao tác mang tính chất thủ tục) như vậy chăng?

3. System Programming / Kernel Programming


Con đường gian truân bắt đầu từ đây. Sau khi bạn đã có đủ kiến thức về hệ thống cũng như kiến thức về lập trình, thì bạn hãy bắt đầu với phần này. Có thể bạn sẽ thắc mắc "phần 1 và phần 3 này khác gì nhau?". Thế thì tôi xin giải thích 1 chút:
Như các bạn đã thấy trong phần 1 tôi khuyến khích các bạn lập trình ra các chương trình phục vụ cho công việc hàng ngày của các bạn cũng như của mọi người, cứ tạm gọi là Application programming đi, thì cái các bạn đang làm đó mới chỉ là cầu nối trung gian cho việc giao tiếp giữa máy tính và người dùng bình thường, và tìm cách khai thác máy tính như một công cụ hữu ích để phục vụ cho nhu cầu của mọi người. Còn system programming lại hoàn toàn khác, bạn cần tìm cách để "làm bạn" với máy vi tính, lắng nghe nó, hiểu nó để biết nó làm được những gì, và tiến tới điều khiển và tận dụng sức mạnh của nó một cách hoàn toàn. Nôm na lại là chủ yếu trong phần này các bạn sẽ cố gắng tìm cách để lập trình tương tác với phần cứng cũng như nhân của hệ điều hành và điều khiển các thành phần này hoạt động theo ý muốn của bạn. Ví dụ như viết một vài driver cho thiết bị ngoại vi, viết ra 1 compiler/debugger cho riêng mình, viêt và submit được một vài bản patch cho linux kernel, code trên các hệ thống nhúng,.... tiến xa hơn nữa thì tự tạo hẳn một cái hệ điều hành mới smilie. Các công việc này rất chi là gian nan vì bên cạnh khả năng lập trình tốt và hiểu rõ cách hoạt động của máy tính cũng như hệ điều hành thì còn phải có kiến thức thật tốt về cấu trúc phần cứng (và cũng một phần, không phải là ít về điện và điện tử). Đến được mức này thì bạn cũng thuộc vào hạng "thần thánh" rồi chứ không phải bình thường nữa smilie

4. Hacking and Security

Phần này là phần cuối, nhưng thực tế thì chỉ là phần "ăn theo" của các phân trên nhưng lại là cảnh giới tối thượng của một lập trình viên. Một lập trình viên giỏi cũng gần như có nghĩa là anh ta là 1 hacker cứng tay. Tuy nhiên, có nhiều quan điểm về hacking and security khác nhau, bởi vì các quan điểm đó nhiều khi được đặt trên các góc độ quy chiếu khác nhau cho nên không đồng nhất. Trong góc độ lập trình, tôi chỉ xem xét "hacking and security" là biểu trưng cho 2 mục đích chính, là ưu tiên hàng đầu và tối quan trọng của một lập trình viên:
- Độ hiệu quả của code và chương trình
- Độ tin cậy và an toàn của code và chươn trình
Có một câu chuyện bịa đặt trắng trợn như sau
Thời sinh viên....
Tôi có code ra một chương trình nho nhỏ, một cái chương trình chat để thi thoảng tâm sự với nhỏ bạn gái, 2 đứa thủ thỉ với nhau cho tiện lợi smilie. Mọi chuyện diễn ra hết sức tốt đẹp, tối nào cũng thế, tin đi tin về rầm rầm, mùi mẫn muốn chết đi được smilie. Tuy nhiên dạo gần đây nhỏ đó than phiền rằng sao máy của nhỏ dạo này cứ khi chat chit với tôi là lại chạy chậm và lag lắm. Thế là tôi nghi là chương trình chat của tôi có vấn đề. Kiểm tra lại thấy code vẫn ổn, các tính năng của chương trình vẫn hoạt động tốt, tuy nhiên xem xét kĩ hơn thì thấy chương trình chiếm quá nhiều memory cũng như CPU Usage. À, thì ra bị chậm và lag là do đây. Thế là tôi phải tìm cách chỉnh sửa lại code, để nó trở nên tối ưu hơn, khi chạy chiếm ít CPU và RAM hơn. Việc chỉnh sửa code này nhằm giúp cho chương trình hoạt động hiệu quả hơn, chính là việc tôi đang "hack" vào code để đáp ứng đúng cho nhu cầu của tôi (và tất nhiên của nhỏ bạn gái kia nữa hehe). Tôi mày mò xây dựng lại chương trình, áp dụng các thuật toán tốt hơn và nghĩ ra các thuật toán mới linh động hơn, cuối cùng đã thành công. Từ đó tôi và nhỏ lại chat chit tưng bừng.
Cái chuyện tình yêu tình báo nhiều khi cũng phải giấu kín để tránh cho thiên hạ soi mói (mà nhiều khi lũ bạn biết mình có "gấu" nó lại bắt khao thì khổ). Cả tôi và nhỏ đều dấu nhẹm đi, để chờ thời cơ rồi công khai cho bàn dân thiên hạ biết. Thế nhưng mà giờ G chưa đến mà đã bị mấy thằng bạn phát hiện ra, thế là khổ thân cái ví của tôi, đã chả có gì để mà bồi bổ, giờ lại phải khao nên chuyển sang trạng thái suy dinh dưỡng nặng. Tôi tự hỏi "tại sao chúng nó lại biết được nhỉ?". Tôi lần mò tìm hiểu, à thì ra chúng nó thấy tối suốt ngày ngồi cặm cụi gõ gõ bấm bấm, rồi thi thoảng lại ngồi dòm cái màn vi tính rồi cười tủm tỉm một mình, nên chúng nó sinh nghi, ngấm ngầm capture các packets trên mạng và túm được một mớ các gói tin của tôi gửi đi thông qua cái chương trình chat kia, ở dạng plain text. Thế nên chúng nó mới phát hiện ra. Suy ra là, code của tôi không an toàn và đã để lộ thông tin, khiến cho tôi bị thiệt hại nặng về kinh tế và nhỏ thì "xí hổ" nặng khi sau này thi thoảng chúng tôi vẫn bị lũ bạn tôi trêu đùa.
Tuy việc đã lộ nhưng tôi vẫn muốn hoàn thiện chương trình chat của mình để nó trở nên an toàn và bảo mật tốt hơn. Tôi áp dụng encrypt các tin nhắn rồi mới gửi đi, sang đến bên nhỏ bạn thì tiến hành decrypt ra, sau đó tiến hành kiểm tra lại thì thấy chỉ túm được một mớ packets chứa các tin nhắn đã được encrypt. Phù, thế là an toàn rồi.

Đó chỉ là câu chuyện để mô phỏng cho một phần vô cùng nhỏ của "hacking and security". Để làm được hacking and security toàn diện thì các bạn cần phải có kiến thức rất rộng lớn, về cả lập trình, hệ thống máy tính lẫn kiến thức về mạng cũng như phần cứng. Việc nâng cao hiệu quả và độ tin cậy của một sản phầm phần mềm cũng như phần cứng rất khó khăn và tốn nhiều thời gian, đòi hỏi nhiều kiến thức cũng như công sức bỏ ra, cần nhất là bạn cần phải hiểu nguyên lý hoạt động của các thành phần liên quan. Viết được code, run được chương trình, xây dựng 1 hệ thống hoạt động được là chưa đủ, cần phải làm sao để cho những thứ đó chạy thật "mượt", thật an toàn nữa. Mà cái công đoạn tối ưu chương trình này, không phải chỉ diễn ra một lần là xong, mà còn phải thực hiện rất rất nhiều lần. Sau mỗi lần chỉnh sửa nâng cấp, chương trình sẽ càng trở nên hoàn thiện hơn và an toàn hơn... Đó là lý do tại sao hacking and security là cảnh giới tối thượng của một lập trình viên, theo ý kiến cá nhân của tôi.

Kết bài thì đơn giản thôi, một người viết ra chương trình hoàn thiện nhất chính là lập trình viên giỏi nhất, bất kể anh ta dùng cách nào đi chăng nữa.

P/s: vì tôi là dân ngoại đạo, các kiến thức đều do gom góp tự học nên sẽ không tránh khỏi sai sót, nên rất mong được mọi người bổ sung và góp ý để hoàn thiện hơn

Regards
my personal blog:
http://www.ltops9.wordpress.com
(poor english level, but i'm trying to make better)
[Up] [Print Copy]
  [Article]   Làm thế nào để trờ thành một "Siêu Lập trình viên"? 14/05/2014 04:20:45 (+0700) | #2 | 280639
StarGhost
Elite Member

[Minus]    0    [Plus]
Joined: 29/03/2005 20:34:22
Messages: 662
Location: The Queen
Offline
[Profile] [PM]
Đọc tới đọc lui, cuối cùng vẫn không thấy tác giả đề cập đến điểm quan trọng nhất: thế nào gọi là "siêu lập trình viên", hoặc lập trình viên "pro". Không có mục tiêu thì đi bao giờ mới đến đích.

Chỉ thấy tác giả định nghĩa lập trình viên giỏi nhất là người viết ra chương trình hoàn thiện nhất. Tuy nhiên thế nào là "hoàn thiện nhất" cũng không giải thích cụ thể. Hơn nữa, với cái định nghĩa đó thì ngoại trừ mấy tay chuyên viết apps solo ra thì còn lại không đủ tiêu chuẩn để trở thành lập trình viên giỏi nhất, vì họ không có khả năng viết hoàn toàn một chương trình, thì nói gì đến chuyện hoàn thiện.
Mind your thought.
[Up] [Print Copy]
  [Article]   Làm thế nào để trờ thành một "Siêu Lập trình viên"? 14/05/2014 08:56:20 (+0700) | #3 | 280642
Levis
Member

[Minus]    0    [Plus]
Joined: 14/03/2012 10:31:11
Messages: 27
Location: REPT
Offline
[Profile] [PM] [WWW] [MSN]
Hi anh StarGhost,
Rất cảm ơn khi anh đã đọc và tham gia thảo luận topic này

Về nhận xét của anh cho việc không đưa ra cái khái niệm về "siêu lập trình viên" hay lập trình viên "pro" là do quan điểm của em về cái khái niệm này cũng chưa thực sự rõ ràng. Bởi vì ngay từ đầu em đã nhận xét cái câu hỏi "Làm thế nào để trở thành 1 siêu lập trình viên?" là hết sức điên rồ, và em nghĩ là chưa chắc đã tồn tại 1 "siêu lập trình viên". Thế nhưng theo cách nghĩ của đa số các bạn học lập trình và các bạn làm lập trình hiện tại thì em tin là trong quá trình học tập và làm việc của họ, không dưới một lần họ đã từng ước mơ trở thành 1 "siêu lập trình viên". Có vẻ hơi xa vời và không mấy liên quan nhưng em xin được ví một "siêu lập trình viên" với một vị Phật, vị Tiên hay Bụt trong tín ngưỡng dân gian Việt Nam. Mấy vị này thì chưa có ai gặp được, nhưng đa phần người dân bình thường vẫn luôn tin vào họ và những phép màu của họ. Và họ không ngừng mơ ước "ước gì mình được trở thành Tiên, thành Phật". Thế nhưng chẳng ai có thể định nghĩa được rõ ràng hoặc trả lời được các câu hỏi như "Thực sự thì Tiên, Phật là ai?". Có lẽ Tiên, Phật chỉ là hình tượng được con người tạo nên bằng trí tưởng tượng và thực hiện hoãn mĩ hoá, để nó trở thành 1 cái tấm guơng để cho con người nhìn vào, noi theo và tự sửa mình. "Siêu lập trình viên" cũng thế. Thế nên trong bài viết em không có định nghĩa cụ thể về một "Siêu lập trình viên". Cũng như trong tất cả các giáo điều, giáo lý của các tôn giáo đều khuyên con người ta tu thân hướng thiện để mong thành "chính quả", thì bài viết này của em cũng nhằm mục đích đó, để hướng và động viên mọi người tích luỹ và trau dồi các kiến thức cần có, để khi lãnh hội đủ kiến thức rồi tự bản thân sẽ có một quan điểm riêng, đúng đắn hơn về cái gọi là "Siêu lập trình viên".

Còn về cái ý kiến "chuơng trình hoàn thiện nhất" ở đây là do em chưa nói rõ ràng. Ý của em là hoàn thiện nhất đối với từng phần code trong chuơng trình chứ không phải là hoàn thiện tính năng trong một chuơng trình lớn. "Hoàn thiện code" có thể tạm hiểu là đáp ứng được 2 yêu cầu: hiệu năng/tốc độ và tính an toàn/bảo mật chứ chưa hẳn là xây dựng chuơng trình hoàn chỉnh với đầy đủ các tính năng
my personal blog:
http://www.ltops9.wordpress.com
(poor english level, but i'm trying to make better)
[Up] [Print Copy]
  [Article]   Làm thế nào để trờ thành một "Siêu Lập trình viên"? 14/05/2014 13:41:00 (+0700) | #4 | 280645
[Avatar]
9aa6
Member

[Minus]    0    [Plus]
Joined: 08/01/2012 21:50:50
Messages: 30
Location: bờ đê lộng gió ,,,,
Offline
[Profile] [PM] [WWW]
Lập trình giỏi có phải là can thiệp điều chỉnh viết chương trình đc trên tất cả các máy tính đúng ko? Vd. Mình có 1 hệ điều hành trống ko như window chẳng hạn ko có phần mềm nào chỉ có hđh đc cài sẵn .ko có tool dev .chỉ có côg cụ soạn thảo notepad thì có thể viết chương trình cho máy tính đó ko?
Đừng tưởng xinh gái mà vội kiêu
có tý nhan sắc vẫn chưa siêu
mà này anh bảo cho mà biết
khi nào mát trời anh sẽ yêu
[Up] [Print Copy]
  [Article]   Làm thế nào để trờ thành một "Siêu Lập trình viên"? 15/05/2014 08:37:27 (+0700) | #5 | 280659
Levis
Member

[Minus]    0    [Plus]
Joined: 14/03/2012 10:31:11
Messages: 27
Location: REPT
Offline
[Profile] [PM] [WWW] [MSN]

9aa6 wrote:
Lập trình giỏi có phải là can thiệp điều chỉnh viết chương trình đc trên tất cả các máy tính đúng ko? 

Như thế chưa đủ. Câu này tương đương với câu nói "Tôi biết rất nhiều ngôn ngữ -> Tôi là một lập trình viên giỏi". Việc biết nhiều ngôn ngữ hay viết được nhiều ứng dụng chạy trên nhiều hệ thống máy tính khác nhau chưa đủ để chứng tỏ bạn là một người giỏi lập trình. Cái quan trọng là bạn cần phải hiểu rõ về ngôn ngữ cũng như hệ thống bạn đang sử dụng để khai thác tối đa sức mạnh của chúng theo cách hiệu quả nhất có thể

9aa6 wrote:

Mình có 1 hệ điều hành trống ko như window chẳng hạn ko có phần mềm nào chỉ có hđh đc cài sẵn .ko có tool dev .chỉ có côg cụ soạn thảo notepad thì có thể viết chương trình cho máy tính đó ko? 

Câu này làm mình liên tưởng đến mấy cái máy smartphone. Bạn thử tìm hiểu về cách viết một ứng dụng cho smartphone xem sao smilie
my personal blog:
http://www.ltops9.wordpress.com
(poor english level, but i'm trying to make better)
[Up] [Print Copy]
  [Article]   Làm thế nào để trờ thành một "Siêu Lập trình viên"? 18/05/2014 13:03:17 (+0700) | #6 | 280680
[Avatar]
9aa6
Member

[Minus]    0    [Plus]
Joined: 08/01/2012 21:50:50
Messages: 30
Location: bờ đê lộng gió ,,,,
Offline
[Profile] [PM] [WWW]

Levis wrote:

9aa6 wrote:
Lập trình giỏi có phải là can thiệp điều chỉnh viết chương trình đc trên tất cả các máy tính đúng ko? 

Như thế chưa đủ. Câu này tương đương với câu nói "Tôi biết rất nhiều ngôn ngữ -> Tôi là một lập trình viên giỏi". Việc biết nhiều ngôn ngữ hay viết được nhiều ứng dụng chạy trên nhiều hệ thống máy tính khác nhau chưa đủ để chứng tỏ bạn là một người giỏi lập trình. Cái quan trọng là bạn cần phải hiểu rõ về ngôn ngữ cũng như hệ thống bạn đang sử dụng để khai thác tối đa sức mạnh của chúng theo cách hiệu quả nhất có thể

9aa6 wrote:

Mình có 1 hệ điều hành trống ko như window chẳng hạn ko có phần mềm nào chỉ có hđh đc cài sẵn .ko có tool dev .chỉ có côg cụ soạn thảo notepad thì có thể viết chương trình cho máy tính đó ko? 

Câu này làm mình liên tưởng đến mấy cái máy smartphone. Bạn thử tìm hiểu về cách viết một ứng dụng cho smartphone xem sao smilie 

viết ứng dụng cho smarphone hay window đều phải có sdk mà , tool dev soạn thoả dịch lỗi , bạn xem lại kỹ câu hỏi "Mình có 1 hệ điều hành trống ko như window chẳng hạn ko có phần mềm nào chỉ có hđh đc cài sẵn .ko có tool dev .chỉ có côg cụ soạn thảo notepad thì có thể viết chương trình cho máy tính đó ko?"
Đừng tưởng xinh gái mà vội kiêu
có tý nhan sắc vẫn chưa siêu
mà này anh bảo cho mà biết
khi nào mát trời anh sẽ yêu
[Up] [Print Copy]
  [Article]   Làm thế nào để trờ thành một "Siêu Lập trình viên"? 18/05/2014 13:39:15 (+0700) | #7 | 280681
Levis
Member

[Minus]    0    [Plus]
Joined: 14/03/2012 10:31:11
Messages: 27
Location: REPT
Offline
[Profile] [PM] [WWW] [MSN]

9aa6 wrote:

Levis wrote:

9aa6 wrote:
Lập trình giỏi có phải là can thiệp điều chỉnh viết chương trình đc trên tất cả các máy tính đúng ko? 

Như thế chưa đủ. Câu này tương đương với câu nói "Tôi biết rất nhiều ngôn ngữ -> Tôi là một lập trình viên giỏi". Việc biết nhiều ngôn ngữ hay viết được nhiều ứng dụng chạy trên nhiều hệ thống máy tính khác nhau chưa đủ để chứng tỏ bạn là một người giỏi lập trình. Cái quan trọng là bạn cần phải hiểu rõ về ngôn ngữ cũng như hệ thống bạn đang sử dụng để khai thác tối đa sức mạnh của chúng theo cách hiệu quả nhất có thể

9aa6 wrote:

Mình có 1 hệ điều hành trống ko như window chẳng hạn ko có phần mềm nào chỉ có hđh đc cài sẵn .ko có tool dev .chỉ có côg cụ soạn thảo notepad thì có thể viết chương trình cho máy tính đó ko? 

Câu này làm mình liên tưởng đến mấy cái máy smartphone. Bạn thử tìm hiểu về cách viết một ứng dụng cho smartphone xem sao smilie 

viết ứng dụng cho smarphone hay window đều phải có sdk mà , tool dev soạn thoả dịch lỗi , bạn xem lại kỹ câu hỏi "Mình có 1 hệ điều hành trống ko như window chẳng hạn ko có phần mềm nào chỉ có hđh đc cài sẵn .ko có tool dev .chỉ có côg cụ soạn thảo notepad thì có thể viết chương trình cho máy tính đó ko?"  

VD như 1 hệ điều hành như android chẳng hạn, đáp ứng đủ các tính chất bạn nói:
- Không giống windows
- Không có phần mềm nào chỉ có hệ điều hành được cài sẵn (lấy ví dụ như là bản được cook tối ưu đi)
- Không có tool dev (không hiểu ý bạn ở đây là tool dev được cài sẵn trong hệ điều hành hay là tool dev ở đâu nữa, chứ android thì sao mà cài eclipse hay jdk lên được, mà cái từ "dịch lỗi" mình mới nghe thấy đây là lần đầu tiên, không hiểu lắm).
- Chỉ có công cụ soạn thảo (vd ở đây là 1 cái app tạo note đi)
Vì thế cho nên mình liên tưởng đến mấy cái smartphone. Câu hỏi của bạn có vẻ khó hiểu với mình, nếu mình hiểu sai bạn có thể nói rõ hơn được không? smilie
my personal blog:
http://www.ltops9.wordpress.com
(poor english level, but i'm trying to make better)
[Up] [Print Copy]
  [Article]   Làm thế nào để trờ thành một "Siêu Lập trình viên"? 04/08/2014 13:24:40 (+0700) | #8 | 281192
[Avatar]
panfider
Member

[Minus]    0    [Plus]
Joined: 12/05/2010 01:51:04
Messages: 448
Offline
[Profile] [PM] [Email]
bạn nên tìm hiểu java hoặc c# chứ kông nên tìm hiểu c hoặc asm
[Unix] live free or die
[Up] [Print Copy]
  [Article]   Làm thế nào để trờ thành một "Siêu Lập trình viên"? 07/08/2014 11:06:02 (+0700) | #9 | 281217
[Avatar]
xuanphongdocco
Member

[Minus]    0    [Plus]
Joined: 19/08/2009 08:25:03
Messages: 247
Offline
[Profile] [PM]
Tại sao cứ phải có cái chữ siêu mới được nhỉ?
Xuân Phong Nguyễn
[Up] [Print Copy]
  [Article]   Làm thế nào để trờ thành một "Siêu Lập trình viên"? 07/09/2014 20:58:10 (+0700) | #10 | 281556
[Avatar]
ntnguyen
Member

[Minus]    0    [Plus]
Joined: 24/07/2014 03:30:40
Messages: 58
Offline
[Profile] [PM]

Levis wrote:
Nhưng này, theo quan điểm của cá nhân tôi thì Bill Gates nên được gọi là một nhà doanh nhân thành đạt hơn là một lập trình viên tầm cỡ. Những lập trình viên có thể nói là tầm cỡ thì nên nhắc đến những cái tên như Linus Torvalds hay Dennis Ritchie sẽ phù hợp hơn. 


Sinh thời Steve Jobs đã từng nhận định rằng: Ngài Bill là một doanh nhân, thật sự là một doanh nhân. Ngài ấy thích hợp cho việc kiếm tiền, làm từ thiện và chưa từng thật sự thiết kế ra bất kỳ thứ gì.
Câu ấy mình dịch không nguyên văn theo ý của ngài chủ tịch quá cố Steve.

Levis wrote:
Tuy nhiên tôi nghĩ lại rằng:"Ở, kể ra cũng có gì đáng để bàn ở đây đó chứ", thế nên tôi quyết định viết cái note này, không phải để chỉ bạn cách làm sao để trờ thành như Bill Gates, tiền không đếm mà toàn tính theo cân (kg), mà sẽ giúp bạn định hướng con đường mình cần đi để - cho dù không trở nên nổi tiếng đi chăng nữa - thì cũng đủ để bạn biến mình thành 1 cái gì đó "pro". 


Cá nhân mình cho rằng việc dấn thân vào ngành CNTT để kiếm tiền là chuyện của "bọn trẻ". Còn theo cách nhìn của "1 siêu lập trình viên" theo ý của bạn, thì không đúng. Bước chân đầu tiên của một lập trình viên chân chính không bao giờ bắt đầu bằng tiền.

Levis wrote:
Và hãy tiến hành code các ứng dụng, tiện ích từ nhỏ cho đến lớn, trước hết là phục vụ nhu cầu của mình đã, rồi phục vụ nhu cầu của người khác. 


Theo hướng này thì bạn có đứng - ngồi - nằm viết ứng dụng theo kiểu gì đi nữa thì cũng không bao giờ trở thành như tiêu đề được đâu. Bời vì theo ý đó, đẳng cấp cao nhất bạn có thể đạt được chỉ là sự đương đại, chứ không phải là công nghệ vượt bậc.
Sự đột phá trong bất cứ ngành nghề nào cũng phải từ việc chấp nhận không đi theo lối mòn, là sự khác biệt so với số đông.

Levis wrote:
P/s cho phần này: có vài lần tôi dùng một vài IDE hiện đại ngày nay thấy việc debug bằng các debugger tích hợp trong IDE khá là tẻ nhạt khi đa số chỉ cho phép xem và trace theo giá trị của các biến.  


Về ý này thì mình có 1 lời khuyên là bạn nên tham khảo namespace System.Diagnostics
Nguyên văn trên MSDN đây: The System.Diagnostics namespace provides classes that allow you to interact with system processes, event logs, and performance counters.
Có cả ngăn xếp Stack và vùng Heap mà bạn cần.

Levis wrote:
Các công việc này rất chi là gian nan vì bên cạnh khả năng lập trình tốt và hiểu rõ cách hoạt động của máy tính cũng như hệ điều hành thì còn phải có kiến thức thật tốt về cấu trúc phần cứng (và cũng một phần, không phải là ít về điện và điện tử). Đến được mức này thì bạn cũng thuộc vào hạng "thần thánh" rồi chứ không phải bình thường nữa smilie 


Điều này đúng, và luôn đúng... đối với các giáo trình tiếng Việt. Mình không bôi bác. Nhưng bạn cứ thử search, một phần rất lớn các luận văn tốt nghiệp, bài giảng đều là copy version.
Nhiều lần mình thấy giáo trình có ghi tác giả là Thạc sỹ Công nghệ thông tin, vậy mà cũng là đem tài liệu của người nước ngoài dịch lại, cắt xén.
Tệ hơn nữa là họ còn in thành sách để bán. Mình cảm thấy rất xấu hổ cho hành vi như vậy.

Bạn cứ thử chọn 1 cuốn lập trình trên Amazon đi, cuốn nào có giá càng mắc, càng có nhiều người bình chọn, sẽ cung cấp gần như đầy đủ tất cả kiến thức của các mảng liên quan đến vấn đề đó.

Ai mà như ở Việt Nam, thánh bảo sao làm vậy. Đủ điểm qua ải thì thôi, cần thì search Google, quan hệ, copy... không cần thì mặc kệ, chẳng cần biết nó là cái gì.

Levis wrote:
Kết bài thì đơn giản thôi, một người viết ra chương trình hoàn thiện nhất chính là lập trình viên giỏi nhất, bất kể anh ta dùng cách nào đi chăng nữa. 

Thứ nhất: Bạn nên tìm hiểu về nhiệm vụ và cách thức làm việc của một Project Manager để hiểu hơn về chổ này.

Thứ hai: Mình dám cá là khi Windows 7 được thiết kế xong, thì Steve Ballmer cũng không thể nói ra được chính xác là trên Windows 7 có tất cả bao nhiêu files/folers của hệ thống - thứ mà KHÔNG PHẢI kế thừa của các phiên bản đàn anh trước đó.
Nếu tính 100.000 nhân viên thiết kế cho phần nhân (Kernel), mỗi nhóm góp 1 chút, thì lượng mã sinh ra sẽ rất khủng. ==>> Không thể tính bằng sức của 1 người cho các Project lớn.
Một ý nữa là không thể có được sản phẩm phần mềm hoàn thiện nhất. Bằng chứng là mỗi sản phẩm đều có version kèm theo. Mỗi lần update thì, hoặc là up thêm tính năng, hoặc tích hợp bản vá lỗi.

Sự hoàn thiện của một sản phẩm phần mềm không đánh giá hoàn toàn bằng những nhận xét của chuyên gia. Mà còn ở người dùng cuối, hãng thứ ba, các hacker/cracker ẩn danh.

__________________________________________________________________________________________

Đó là tất cả các ý của mình cho bài viết của bạn.
Vậy bạn thử đoán xem mình là ai???
Chúc bạn vui!
Stay hungry. Stay foolish.
Design is not just what it looks like. Design is how it works
[Up] [Print Copy]
  [Article]   Làm thế nào để trờ thành một "Siêu Lập trình viên"? 07/09/2014 22:26:39 (+0700) | #11 | 281557
[Avatar]
ntnguyen
Member

[Minus]    0    [Plus]
Joined: 24/07/2014 03:30:40
Messages: 58
Offline
[Profile] [PM]
Mà từ lúc trở thành thành viên của HVA đến giờ, toàn bộ bài viết của mình luôn có phần này. Nó giống như là một thói quen của mình, một trong những điều mà mình học được của những experts hàng đầu của các sites CodeProject, StackOverflow, StackExchange...

1. Bạn nhầm lẫn giữa việc học một ngôn ngữ lập trình và làm thế nào để xây dựng cấu trúc một chương trình. Programming và UML là khác nhau.

2. Bạn gộp chung kết quả của nhiều sự việc lại và gán ép sự am hiểu kiến thức cho một người. Kevin Mitnick nổi danh một thời, nhưng chưa có ai nhắc đến việc anh ấy đã từng ngồi viết dòng: MessageBox.Show("Hello World!");
Để cấu hình được một Server, không nhất định phải giỏi về các namespace trong .Net Framework.

3. System Applications là bạn viết các ứng dụng trên nền của OS. Còn Kernel programming là cái gì? Nghe đây:
KHÔNG MỘT AI CÓ THỂ ĐỌC ĐƯỢC NHỮNG DÒNG CODE CỦA NHỮNG FILES SYSTEM (THUỘC PHẦN NHÂN - KERNEL) CỦA WINDOWS, NGOẠI TRỪ MICROSOFT.
Việc cấy thêm đoạn mã vào cho System làm việc theo ý mình giống như cách mà bạn làm với họ Unix trên Windows là chuyện không tưởng.

4. Mức độ khả thi của một chương trình được thẩm định thông qua một hoặc nhiều thành viên tạo nên chương trình đó (chủ bản quyền, có thể có hoặc không bao gồm người viết code).
Còn mức độ toàn vẹn bảo mật theo ý của bạn, là giai đoạn gia công và testing (Testers). Một trong những bước sau cùng trước khi sản phẩm hoàn thiện.

5. Windbg là một debugger mạnh, rất mạnh. Hoạt động trên nền Windows x86 lẫn x64. Được tích hợp trong Windows Kits. Đây là Debugger hiện đại đấy bạn.
http://hvaonline.net/hvaonline/posts/list/45816.html#281552

6. Cách trình bày bài viết của bạn, đọc rất là nhức mắt. Excellent Programmer luôn có cách nhìn thẫm mĩ tốt cho các sản phẩm của mình.

Cuối cùng. Để trở thành Thần Thánh, đôi khi chỉ cần viết đúng 1 con virus. Nhưng nếu là một chuyên gia, bạn có chắc ai cũng biết đến bạn không?

p/s: Tự dưng dạo này cảm thấy mình oanh tạc trên HVA quá. Hjxhjx
Stay hungry. Stay foolish.
Design is not just what it looks like. Design is how it works
[Up] [Print Copy]
  [Article]   Làm thế nào để trờ thành một "Siêu Lập trình viên"? 12/09/2014 21:52:02 (+0700) | #12 | 281590
hoangtrung1999
Member

[Minus]    0    [Plus]
Joined: 09/02/2012 06:43:26
Messages: 2
Offline
[Profile] [PM]
Định hướng tuơng lai của em là làm một hacker mũ trắng,vậy em nên theo học ngành gì @@ và giờ nên bắt đầu từ đâu,em đang tự học java nhưng không hiểu rõ lắm @@
[Up] [Print Copy]
  [Article]   Làm thế nào để trờ thành một "Siêu Lập trình viên"? 13/09/2014 07:39:08 (+0700) | #13 | 281593
Levis
Member

[Minus]    0    [Plus]
Joined: 14/03/2012 10:31:11
Messages: 27
Location: REPT
Offline
[Profile] [PM] [WWW] [MSN]

ntnguyen wrote:
Cá nhân mình cho rằng việc dấn thân vào ngành CNTT để kiếm tiền là chuyện của ";bọn trẻ". Còn theo cách nhìn của "1 siêu lập trình viên" theo ý của bạn, thì không đúng. Bước chân đầu tiên của một lập trình viên chân chính không bao giờ bắt đầu bằng tiền.
 

Bạn đọc lại câu này tôi đã viết:
Lúc đầu tôi vẫn cho rằng câu hỏi này thực sự rất viển vông bởi vì cái ham muốn điên rồ của cái người hỏi câu này (đã được tôi nói ở phía trên) 

ntnguyen wrote:
Theo hướng này thì bạn có đứng - ngồi - nằm viết ứng dụng theo kiểu gì đi nữa thì cũng không bao giờ trở thành như tiêu đề được đâu. Bời vì theo ý đó, đẳng cấp cao nhất bạn có thể đạt được chỉ là sự đương đại, chứ không phải là công nghệ vượt bậc.
Sự đột phá trong bất cứ ngành nghề nào cũng phải từ việc chấp nhận không đi theo lối mòn, là sự khác biệt so với số đông. 

Bạn lấy những công việc cần làm khi mới bắt đầu để đánh giá kết quả của cả một quá trình? Bài viết tôi chỉ viết đến đó là dừng lại?

ntnguyen wrote:
Về ý này thì mình có 1 lời khuyên là bạn nên tham khảo namespace System.Diagnostics
Nguyên văn trên MSDN đây: The System.Diagnostics namespace provides classes that allow you to interact with system processes, event logs, and performance counters.
Có cả ngăn xếp Stack và vùng Heap mà bạn cần. 

Bạn đã thử debug bằng olly, gdb hay các công cụ đại loại như thế để biết chúng có những gì? Và sẽ ra sao đối với các ngôn ngữ khác .NET? (tôi không muốn so sánh mạnh yếu và tính năng của các ngôn ngữ hay các IDE, đã nói ngay từ đầu rồi và bạn vẫn mang .NET vào đây)

ntnguyen wrote:

Thứ nhất: Bạn nên tìm hiểu về nhiệm vụ và cách thức làm việc của một Project Manager để hiểu hơn về chổ này.
Thứ hai: Mình dám cá là khi Windows 7 được thiết kế xong, thì Steve Ballmer cũng không thể nói ra được chính xác là trên Windows 7 có tất cả bao nhiêu files/folers của hệ thống - thứ mà KHÔNG PHẢI kế thừa của các phiên bản đàn anh trước đó.
Nếu tính 100.000 nhân viên thiết kế cho phần nhân (Kernel), mỗi nhóm góp 1 chút, thì lượng mã sinh ra sẽ rất khủng. ==>> Không thể tính bằng sức của 1 người cho các Project lớn.
Một ý nữa là không thể có được sản phẩm phần mềm hoàn thiện nhất. Bằng chứng là mỗi sản phẩm đều có version kèm theo. Mỗi lần update thì, hoặc là up thêm tính năng, hoặc tích hợp bản vá lỗi.
Sự hoàn thiện của một sản phẩm phần mềm không đánh giá hoàn toàn bằng những nhận xét của chuyên gia. Mà còn ở người dùng cuối, hãng thứ ba, các hacker/cracker ẩn danh.
 

Không hiểu ý bạn chỗ này lắm, bài viết của tôi cố gắng để định hướng nhằm giúp người đọc tràu dồi kĩ năng lập trình của bản thân (đã nói trong phần trả lời anh StarGhost), chứ không hướng tới cái gì gọi là "project" cả. Sự trau chuốt phải tiến hành từ những điều nhỏ nhất là chất lượng của những dòng code mình viết ra(bài viết của tôi muốn nói đến điều này), chứ không đến từ những "big project".

ntnguyen wrote:
1. Bạn nhầm lẫn giữa việc học một ngôn ngữ lập trình và làm thế nào để xây dựng cấu trúc một chương trình. Programming và UML là khác nhau.
 

Không hiểu ý kiến này bạn nêu ra từ đâu, có phù hợp hay không khi đây là một bài viết mang tính định hướng?

ntnguyen wrote:

2. Bạn gộp chung kết quả của nhiều sự việc lại và gán ép sự am hiểu kiến thức cho một người. Kevin Mitnick nổi danh một thời, nhưng chưa có ai nhắc đến việc anh ấy đã từng ngồi viết dòng: MessageBox.Show("Hello World!");
Để cấu hình được một Server, không nhất định phải giỏi về các namespace trong .Net Framework. 

Bạn nên đọc lại dòng này tôi đã viết:

....mà tối sẽ chỉ nêu ra hướng bạn cần đi để trở thành một "pro", theo các suy nghĩ, kinh nghiệm và quan điểm của cá nhân tôi.
 

Và không hiểu ví dụ bạn đưa ra có liên quan gì đến quan điểm của bạn nêu? Và xin nhắc lại, đây là một bài mang tính chất định hướng chứ không phải phân tích kĩ thuật chuyên sâu.

ntnguyen wrote:

3. System Applications là bạn viết các ứng dụng trên nền của OS. Còn Kernel programming là cái gì? Nghe đây:
KHÔNG MỘT AI CÓ THỂ ĐỌC ĐƯỢC NHỮNG DÒNG CODE CỦA NHỮNG FILES SYSTEM (THUỘC PHẦN NHÂN - KERNEL) CỦA WINDOWS, NGOẠI TRỪ MICROSOFT.
Việc cấy thêm đoạn mã vào cho System làm việc theo ý mình giống như cách mà bạn làm với họ Unix trên Windows là chuyện không tưởng.
 

Tôi đã nói là "kernel programming trên Windows" lúc nào vậy? Ở trong bài viết tôi có nói đến từ "trong Windows" đâu nhỉ?

ntnguyen wrote:

4. Mức độ khả thi của một chương trình được thẩm định thông qua một hoặc nhiều thành viên tạo nên chương trình đó (chủ bản quyền, có thể có hoặc không bao gồm người viết code).
Còn mức độ toàn vẹn bảo mật theo ý của bạn, là giai đoạn gia công và testing (Testers). Một trong những bước sau cùng trước khi sản phẩm hoàn thiện.
 

Tôi đã nói ở phía trên:
Không hiểu ý bạn chỗ này lắm, bài viết của tôi cố gắng để định hướng nhằm giúp người đọc tràu dồi kĩ năng lập trình của bản thân (đã nói trong phần trả lời anh StarGhost), chứ không hướng tới cái gì gọi là "project" cả. Sự trau chuốt phải tiến hành từ những điều nhỏ nhất là chất lượng của những dòng code mình viết ra(bài viết của tôi muốn nói đến điều này), chứ không đến từ những "big project".
 

ntnguyen wrote:

5. Windbg là một debugger mạnh, rất mạnh. Hoạt động trên nền Windows x86 lẫn x64. Được tích hợp trong Windows Kits. Đây là Debugger hiện đại đấy bạn.
http://hvaonline.net/hvaonline/posts/list/45816.html#281552
 

Tôi vẫn đang dùng Windbg song song với OllyDbg và các debugger khác trong vài năm trở lại đây. Tôi coi chúng là "hàng nóng" smilie

ntnguyen wrote:

6. Cách trình bày bài viết của bạn, đọc rất là nhức mắt. Excellent Programmer luôn có cách nhìn thẫm mĩ tốt cho các sản phẩm của mình.
 

Không biết bạn có đọc kĩ bài viết hay không, nhưng tôi đã viết ngay trên đầu bài:
...mặc dù tôi là dân tài chính chứ không phải theo công nghệ thông tin, hoàn toàn là 1 "trái tim bên lề"...  

Cho nên tôi không phải là 1 Excellent programmer. Việc tôi có thể làm chỉ là làm nổi bất các phần quan trọng và đánh dấu các đề mục của từng phần. Về thẩm mĩ thì có nhiều quan điểm khác nhau lắm, tùy vào con mắt của mỗi người.

ntnguyen wrote:

Cuối cùng. Để trở thành Thần Thánh, đôi khi chỉ cần viết đúng 1 con virus. Nhưng nếu là một chuyên gia, bạn có chắc ai cũng biết đến bạn không? 

Không hiểu câu này lắm? Mục đích cuối cùng chỉ là để cho mình trở nên nổi tiếng, được nhiều người biết đến? Lần thứ 3 tôi nhắc lại ý kiến của tôi:
...Không hiểu ý bạn chỗ này lắm, bài viết của tôi cố gắng để định hướng nhằm giúp người đọc tràu dồi kĩ năng lập trình của bản thân (đã nói trong phần trả lời anh StarGhost)... 

Regards
my personal blog:
http://www.ltops9.wordpress.com
(poor english level, but i'm trying to make better)
[Up] [Print Copy]
  [Article]   Làm thế nào để trờ thành một "Siêu Lập trình viên"? 13/09/2014 16:15:10 (+0700) | #14 | 281596
[Avatar]
ntnguyen
Member

[Minus]    0    [Plus]
Joined: 24/07/2014 03:30:40
Messages: 58
Offline
[Profile] [PM]

Levis wrote:
mà sẽ giúp bạn định hướng con đường mình cần đi để - cho dù không trở nên nổi tiếng đi chăng nữa - thì cũng đủ để bạn biến mình thành 1 cái gì đó "pro". 


Trái tim bên lề thì "dẹp" ngay câu này đi nhé.
HVA cho tới thời điểm hiện tại chưa có được bao nhiêu người đủ bản lĩnh "giúp bạn định hướng con đường mình cần đi" cho tất cả mọi người đâu nhé.
Kể cả những cái user name có màu này hoặc màu này

Levis wrote:
Con đường của tôi chọn là:
[b]Programming -> Debugging -> [color=red] System Programming/Kernel Programming ->  

Tôi copy lại đấy, còn gì chối nữa không?
Ngay từ đầu, bạn không nói là: Chỉ hỗ trợ lập trình trên nền Unix, Android, iOS... hay bất cứ cái gì mà có mã nguồn mở khác.
============>>>>>>>>>> Tôi có quyền nghĩ đến việc bạn đang hướng dẫn "sửa đổi nhân của họ Windows"

Một điều nữa, tôi không biết bạn cần sử dụng những tính năng cao cấp gì. Nhưng với .NET, bạn có thể gần như làm được tất cả mọi chuyện, kể cả viết một cái debugger mới theo ý mình.
Ví dụ cho bạn luôn:

using System;
using System.Diagnostics;

namespace Test
{
class Program
{
static void Main()
{

for (int j = 0; j < 10; j++)
{
var sw = Stopwatch.StartNew();
double nano = 0.00;

int a, b;
a = 1; b = 2;

// __________________________________________________________________

/*
* Dùng đoạn này để tính time thực thi của command trong vòng lặp
* Với tổng số lần lặp là 500 triệu lần
*/

sw.Start();
for (int i = 0; i < 500000000; i++)
{
int c = (a + b);
}
sw.Stop();

// __________________________________________________________________


nano += sw.Elapsed.TotalMilliseconds * 1000000;
Console.WriteLine("TotalSeconds is: {0}", sw.Elapsed.TotalSeconds.ToString());
Console.WriteLine("TotalMilliseconds is: {0}", sw.Elapsed.TotalMilliseconds.ToString());
Console.WriteLine("Nanoseconds time is: {0}", nano.ToString());
Console.WriteLine("_____________________________________________________________"smilie;
}
Console.ReadLine();
}
}
}

VẬY CHO HỎI: CÁI TÍNH NĂNG NÀO CỦA "HÀNG NÓNG" CỦA BẠN HỖ TRỢ ĐƯỢC TẬN RĂNG THEO Ý CỦA TÔI VẬY?

Tôi cá là bạn chỉ biết Debug mà không biết đến Release. Thậm chí tôi còn nghi ngờ đến việc sử dụng kết hợp Locals, Watch, Breakpoint, Step into, Step over, Disassembly, Register...................

Show cái mớ kiến thức lượm lặt để lườm mây đứa nhỏ sao?
Hồi trước khác, bây giờ khác. Cái thời đại gom tất cả newbie lại chung thành "1 bọn" đã chấm dứt từ khi xuất hiện ntnguyen rồi đó bạn.

Bạn có cần Elite Members hay Moderators thẩm định reply của tôi không?
Stay hungry. Stay foolish.
Design is not just what it looks like. Design is how it works
[Up] [Print Copy]
  [Article]   Làm thế nào để trờ thành một &quot;Siêu Lập trình viên&quot;? 13/09/2014 16:18:44 (+0700) | #15 | 281597
[Avatar]
ntnguyen
Member

[Minus]    0    [Plus]
Joined: 24/07/2014 03:30:40
Messages: 58
Offline
[Profile] [PM]

Levis wrote:
Việc lập trình này giúp cho bạn có kiến thức vững vàng về các ngôn ngữ lập trình và các thuật toán, giải thuật cũng như cách xây dựng 1 chương trình. 


Đây nữa nè chú em smilie
Write code không hỗ trợ user biết cách xây dựng 1 chương trình nhé. Đó là UML.
Mà bạn cũng đừng dùng StarGhost để "lòe" tôi.
Dám vỗ ngực lớn tiếng với bạn luôn là với phạm vi bài viết này, thì "đó" chỉ là một MÀU XANH

Stay hungry. Stay foolish.
Design is not just what it looks like. Design is how it works
[Up] [Print Copy]
  [Article]   Làm thế nào để trờ thành một "Siêu Lập trình viên"? 13/09/2014 20:58:09 (+0700) | #16 | 281599
Levis
Member

[Minus]    0    [Plus]
Joined: 14/03/2012 10:31:11
Messages: 27
Location: REPT
Offline
[Profile] [PM] [WWW] [MSN]
Tôi đã đặt nghi vấn ngay từ đầu là bạn chỉ "xem" bài viết của tôi chứ bạn không "đọc" bài viết của tôi. Và đến giờ tôi có thể khẳng định điều đó là đúng. Bởi vì bạn chẳng hiểu gì về những gì tôi muốn nói cả. Các câu hỏi phía trên tôi hỏi bạn, bạn chưa trả lời được hết, hãy trả lời tất cả và trả lời tiếp những câu hỏi sau đây. Nếu không trả lời được hết, thì nên dừng tranh luận tại topic này bởi những gì tôi nghĩ và những gì bạn nghĩ nằm ở 2 nơi rất khác nhau. Và đây là một nơi để thảo luận, chứ không phải nơi để công kích cá nhân kiểu

ntnguyen wrote:
Show cái mớ kiến thức lượm lặt để lườm mây đứa nhỏ sao?
Hồi trước khác, bây giờ khác. Cái thời đại gom tất cả newbie lại chung thành "1 bọn" đã chấm dứt từ khi xuất hiện ntnguyen rồi đó bạn.  

ntnguyen wrote:
Đây nữa nè chú em  

Trước khi bắt đầu vào thảo luận (tranh luận), hãy biết cách để tôn trọng người khác trước.
Đây là những câu hỏi tiếp theo của tôi

ntnguyen wrote:

Trái tim bên lề thì "dẹp" ngay câu này đi nhé.
HVA cho tới thời điểm hiện tại chưa có được bao nhiêu người đủ bản lĩnh "giúp bạn định hướng con đường mình cần đi" cho tất cả mọi người đâu nhé.  

HVA có luật "không chuyên nghiệp thì không được chia sẻ" từ bao giờ thế nhỉ? Và nếu có, thì nó nằm ở đâu? CẢM PHIỀN bạn đưa tôi cái link hoặc trích dẫn để tôi tham khảo. Đây là một diễn đàn, mọi người đều có quyền chia sẻ, dù ít hay nhiều, nhưng luôn xem trọng tinh thần đóng góp cho cộng đồng chứ không phải là nơi để thể hiện cái "đủ bản lĩnh" của cá nhân.

ntnguyen wrote:
Tôi copy lại đấy, còn gì chối nữa không?
Ngay từ đầu, bạn không nói là: Chỉ hỗ trợ lập trình trên nền Unix, Android, iOS... hay bất cứ cái gì mà có mã nguồn mở khác.
============>>>>>>>>>> Tôi có quyền nghĩ đến việc bạn đang hướng dẫn "sửa đổi nhân của họ Windows"  

Chữ "Windows" tôi viết nó nằm ở chỗ nào trong câu trích dãn đó? Một người đạt đến trình độ System Programming/ Kernel Programming thì có cần phải chỉ tận tay, day tận mặt cho họ biết là nền tảng nào hỗ trợ kernel development, nền tảng nào không hỗ trợ (không cho phép) kernel development hay không? Ở đây bạn dùng tư tưởng của cá nhân bạn để áp đặt vào tư tưởng của người viết, rồi đánh giá đó là sai lầm. Khác gì tôi bán cho bạn 1 con dao, bạn không mang đi chặt cây mà bạn mang đi chém người, rồi quay về đổ tội cho người bán dao "tại mày bán dao nên tao mới dùng để chém người"? (sorry mọi người chỗ này hơi bạo lực tí).

ntnguyen wrote:
VẬY CHO HỎI: CÁI TÍNH NĂNG NÀO CỦA "HÀNG NÓNG" CỦA BẠN HỖ TRỢ ĐƯỢC TẬN RĂNG THEO Ý CỦA TÔI VẬY?  

Bạn đưa 1 đoạn code nên không giải quyết được vấn đề gì ở đây. Bởi vì tôi đã nói từ đầu, bài viết mang tính định hướng chứ không phải mang tính phân tích kĩ thuật (là do bạn cố ý kéo ra). Mặc dù vậy, tôi muốn bạn sử dụng cái System.Diagnostics của bạn để lấy về cho tôi được list Import libraries/import functions, read debug symbols, set (remove) hardware breakpoint/memory breakpoint, disasm về ASM code + opcode, hiển thị giá trị của các Register, flags trong CPU... ?

ntnguyen wrote:
Write code không hỗ trợ user biết cách xây dựng 1 chương trình nhé. Đó là UML.
Mà bạn cũng đừng dùng StarGhost để "lòe" tôi.
Dám vỗ ngực lớn tiếng với bạn luôn là với phạm vi bài viết này, thì "đó" chỉ là một MÀU XANH  

Tôi dùng anh StarGhost để "lòe" bạn? Rõ ràng bạn không hiểu ý tôi muốn nói. Tôi đã nhắc đến anh StarGhost là bởi vì tôi đã có bài trả lời cho các nhận xét của anh ấy ở phía trên để làm rõ hơn quan điểm và mục đích bài viết của tôi -> có nghĩa là đã có các bài thảo luận ở phía trên, có chúaa các thông tin, luận điểm có liên quan, và điều tôi muốn nói là bạn hãy đọc các bài trả lời đó trước khi bắt đầu viết các bình luận mới. Hỏi thật bạn 1 câu, bạn đã đọc các bài thảo luận đó chưa?
my personal blog:
http://www.ltops9.wordpress.com
(poor english level, but i'm trying to make better)
[Up] [Print Copy]
  [Article]   Làm thế nào để trờ thành một "Siêu Lập trình viên"? 13/09/2014 21:43:00 (+0700) | #17 | 281600
[Avatar]
quygia128
Member

[Minus]    0    [Plus]
Joined: 15/07/2009 20:50:28
Messages: 119
Location: Somewhere
Offline
[Profile] [PM] [WWW]
Có 1 điều em thấy lạ là đem 1 framework(em tạm gọi nó là 1 thư viện) so sánh với Debugger là thế nào?

VẬY CHO HỎI: CÁI TÍNH NĂNG NÀO CỦA "HÀNG NÓNG" CỦA BẠN HỖ TRỢ ĐƯỢC TẬN RĂNG THEO Ý CỦA TÔI VẬY?
 


Code bằng gì theo mình không quan trọng, miến sao giải quyết được yêu cầu đề ra. Còn việc code tốt, tối ưu code thì lệ thuộc vào kỹ năng và giải thuật.

Bài viết này mang tính chất là 1 bài "chỉ ra các thứ cần biết&cần nắm&cần học" để trở thành 1 lập trình viên chuyên nghiệp, với em chỉ có thế.

greerz!

ps: xin lỗi chưa đọc.
.::Mới bắt đầu trên con đường dài::.
.::Super Newbiez::.
[Up] [Print Copy]
  [Article]   Làm thế nào để trờ thành một &quot;Siêu Lập trình viên&quot;? 13/09/2014 21:46:12 (+0700) | #18 | 281601
[Avatar]
ntnguyen
Member

[Minus]    0    [Plus]
Joined: 24/07/2014 03:30:40
Messages: 58
Offline
[Profile] [PM]
Link: http://www.dofactory.com/reference/visual-studio-shortcuts
1 link giải quyết hết tất cả các vấn đề kỹ thuật của bạn nhé.
Write code -> Set breakpoint -> Press shortcut keyboard.
Đọc mà không hiểu hoặc không biết xài thì bạn close cái topic giúp mình luôn.

Dân ngoại đạo nói chuyện đến đâu, giải thích đến đó, mệt thât. Thiết lập thứ tự ưu tiên cho process có cần đoán time thực thi để swap in/out không hả?
Vậy cái mớ Debugger bạn đưa ra, NÚT NÀO, LỆNH NÀO CHỈ RÕ KHỐI LỆNH TRONG SOURCE CODE RUN BAO NHIÊU NANOSECONDS HẢ?

Nếu tôi viết như vầy:
int a, b, c;
a = 1; b = 2;
return c = (a + b);
Bây giờ tôi muốn biết nó thực thi cái lệnh return nó mất bao nhiêu ns, bạn dùng cái Debugger nào? Nói tôi nghe.
Làm như cái Debugger là dạng thánh vật từ trên trời rớt xuống không bằng.

Cái bạn biết thì hạn chế, người ta chỉ dẫn thì nói này nọ. Bạn sẽ chẳng bao giờ thấy được thế giới bên ngoài dù có suốt ngày ôm máy tính đâu.
CodeProject, StackOverflow không bao giờ bắt đầu 1 câu hỏi bằng "Hi there" và kết thúc bằng "Thanks for solutions!"

Bạn càng reply càng nâng level của tôi lên thôi, chả ích gì đâu. Cái tut của bạn giống kiểu:
"Tuy rằng tôi đám cưới đến 4 5 lần và rất nhiều lần bị cắm sừng. Nhưng tôi vẫn có thể chỉ cho bạn thế nào là hạnh phúc thật sự".
Trong lập trình, điều đó giống như sử dụng 1 biến cục bộ trong phạm vi toàn cục.

Bạn gọi anh mrro vào đây. Anh ấy từng sống và làm việc tại Silicon Valley. Bạn biết đó là nơi nào không? Cách thức họ làm việc và cách họ share sự giúp đỡ?
Bài viết của bạn chỉ nhiều nhất được chú ý trong 30 giây, và nhận 1 điểm subtract.

Tại vì bạn nhắc đến StarGhost nhiều lần nên tôi mới nghĩ là bạn dựa hơi Elite Member. Bạn mới nên đọc lại, StarGhost nói rằng BÀI VIẾT CỦA BẠN KHÔNG THỰC SỰ NÊU LÊN ĐƯỢC BẤT KỲ 1 CÁI GÌ.

Đặt vấn đề -> Đi lòng vòng -> Rồi cũng về con số 0.
Nói chú hiểu biết nông cạn thì chú nói không tôn trọng, chỉ là "trái tim bên lề", là dân ngoại đạo, có chú thích trước rồi.

HIỂU ĐIỀU MÌNH MUỐN -> SUY NGHĨ VỀ NÓ -> TÌM HƯỚNG ĐI -> CHẤP NHẬN MỌI KẾT QUẢ XẢY RA -> THỰC HIỆN -> THÀNH CÔNG.
Dân tài chính cũng phải nhắc cái vụ này à? Bạn đặt nền móng không đúng thì CÓ CODE KIỂU GÌ VÀ NHƯ THẾ NÀO ĐI NỮA cũng KHÔNG BAO GIỜ thành công.
Bởi vì ngay từ bước suy nghĩ đã lệch lạc rồi.

Cuối cùng, Mods nào - Elite nào - Admin nào nói ntnguyen reply là spam, là vi phạm quyền con người, là phá đám vào điểm danh và lock acc giúp cái.
Làm thầy giáo dạy lớp càng cao thì càng kiếm được nhiều tiền. Nhưng nếu giáo viên mẫu giáo không có cái TÂM thì sẽ dạy mấy đứa trẻ trở thành "cái gì".

___________________________________KHÔNG BIẾT MÀ TÀI LANH________________________________
Stay hungry. Stay foolish.
Design is not just what it looks like. Design is how it works
[Up] [Print Copy]
  [Article]   Làm thế nào để trờ thành một "Siêu Lập trình viên"? 13/09/2014 21:59:35 (+0700) | #19 | 281602
[Avatar]
ntnguyen
Member

[Minus]    0    [Plus]
Joined: 24/07/2014 03:30:40
Messages: 58
Offline
[Profile] [PM]

quygia128 wrote:
Có 1 điều em thấy lạ là đem 1 framework(em tạm gọi nó là 1 thư viện) so sánh với Debugger là thế nào? 


Bạn Levis có nói là dùng "hàng ngoại" luôn tốt hơn "hàng nội" với tất cả các lý do được nêu trong bài viết của bạn ấy.

Tớ phản bác rằng không đúng. Không cần dùng Debugger "ngoại", vẫn có thể sở hữu được tất cả những tính năng mà bạn ấy đưa ra bằng một hoặc nhiều namespace trong .Net
Stay hungry. Stay foolish.
Design is not just what it looks like. Design is how it works
[Up] [Print Copy]
  [Article]   Làm thế nào để trờ thành một &quot;Siêu Lập trình viên&quot;? 13/09/2014 22:21:09 (+0700) | #20 | 281603
Levis
Member

[Minus]    0    [Plus]
Joined: 14/03/2012 10:31:11
Messages: 27
Location: REPT
Offline
[Profile] [PM] [WWW] [MSN]
Hãy tranh luận bằng thực tế, thực nghiệm để tìm ra cái chưa phù hợp, cái thiếu sót, và đừng lôi các triết lí suông ra để bảo vệ luận điểm. Càng ngày tôi càng thấy bạn đi lệch chủ đề quá nhiều, đi từ việc nhận xét đến việc chỉ trích và miệt thị. Tôi thật sự không muốn thảo luận một chút nào, một phần do sự lệch lạc trong quan điểm phản biện của bạn, một phần là do bạn chưa trả lời thoả đáng bất cứ câu hỏi nào tôi đặt ra ở phía trên, một phần nữa là do bạn luôn muốn áp đặt quan điểm của bạn cho người khác, tôi đã nói: Suy nghĩ của tôi và của bạn khác nhau. Tôi biết, khả năng tôi có giới hạn, và tôi cố gắng truyền tải tất cả những gì mình trải nghiệm được. Tuy là dân tài chính nhưng thời gian tôi đam mê và gắn bó với cntt không phải nhiều, cũng không phải quá ít. Tôi tự học, rất là khó khăn vì không có người chỉ dạy, không qua trường lớp đào tạo chính quy, không có chương trình đào tạo rõ ràng. Vì vậy, hơn ai hết tôi hiểu được những nguyện vọng, khó khăn mà con người ta gặp phải trong quá trình tích luỹ tri thức. Có rất nhiều người đặt những câu hỏi "em không biết bắt đầu từ đâu", "em phải học gì, phải làm gì". Họ có đam mê, họ mong muốn được học hỏi nhưng họ không có điều kiện để học, giống như tôi vậy. Thế nên tôi muốn chia sẻ kinh nghiệm của tôi cho họ, không phải để đánh bóng tên tuổi, hoặc là để chứng tỏ ta đây hiểu biết.
P/s: bạn vẫn chưa "đọc", tôi nói bạn xem thảo luận giữa tôi và anh StarGhost, bạn chỉ "xem" bài của anh ấy mà không "xem" bài trả lời của tôi ở phía dưới.
Và về Debugger, bạn có hiểu chữ "P/s" ở đầu câu nói:
P/s cho phần này: có vài lần tôi dùng một vài IDE hiện đại ngày nay thấy việc debug bằng các debugger tích hợp trong IDE khá là tẻ nhạt khi đa số chỉ cho phép xem và trace theo giá trị của các biến. Tuy vẫn có thể debug kèm theo nhiều thông tin hơn, nhưng như vậy thì vẫn khá là nhạt, tôi vẫn thích dùng mấy cái "hàng nóng" như olly hay gdb hơn, có vẻ rất đã tay smilie. Có lẽ nào khi debug bằng các IDE quá nhiều nên bây giờ có nhiều người không coi trọng việc debug (thậm chí có nhiều người coi debug chỉ như một thao tác mang tính chất thủ tục) như vậy chăng?  

có ý nghĩa gì hay không? Đó là một câu mở rộng, nói ra ngoài vấn đề của bài viết như một thông tin bổ sung, và mang tính chủ quan, chứ không phải là 1 phần chính thức của bài viết. Bạn có hiểu điều này không?
P/s 2: Bạn vẫn chưa trả lời bất cứ câu hỏi nào tôi đặt ra phía trên cả. Nếu thật sự có tinh thần đóng góp và muốn giữ quan điểm của mình, hãy thể hiện bằng việc trả lời những câu hỏi đó trước, ít ra cũng sẽ có vài câu liên quan đến topic này
my personal blog:
http://www.ltops9.wordpress.com
(poor english level, but i'm trying to make better)
[Up] [Print Copy]
  [Article]   Làm thế nào để trờ thành một "Siêu Lập trình viên"? 13/09/2014 22:42:29 (+0700) | #21 | 281604
[Avatar]
ntnguyen
Member

[Minus]    0    [Plus]
Joined: 24/07/2014 03:30:40
Messages: 58
Offline
[Profile] [PM]
Nếu bạn đã bắt tôi nói ra thì nghe cho kỹ đây:
Đầu tiên, bạn đã khẳng định chắc rằng "Làm thế nào để trở thành 1 siêu lập trình viên?" là 1 câu hỏi "khá trẻ trâu"?
Vậy 2000 views cho cái thread này đều toàn bộ là những "đứa", những "thứ", những "loại" hay chú ý tới mấy câu "trẻ trâu" của bạn nên mới cố gắng tiếp thu hết sao? Bao gồm cả StarGhost?

Thứ hai, nếu đã biết rõ mình là "trái tim bên lề", là không thật sự am hiểu, là dân ngoại đạo, chân ướt chân ráo bước vào IT. Vậy tại sao còn viết cái tut này chỉ dẫn cho mấy đứa nhỏ nữa?
Hại não tụi nó à? Hay spam? Hay là viết cho vui thế thôi?

Thứ ba, bài viết lúc nào cũng sặc mùi tiền, mùi "đẳng cấp", là "thượng lưu", là "cảnh giới tối thượng" mà không biết rằng để đạt được những thứ đó cần có những bước đi đầu tiên như thế nào?
Ảo à Levis?

Suy nghĩ về Thành Quả và Thành Công đi Levis.
KHÔNG CÓ THÀNH QUẢ SẼ KHÔNG CÓ THÀNH CÔNG.
Đừng có tối ngày ngồi đó mộng tưởng ôm đống tiền rồi đếm bằng cân ký. Thay vào đó tìm 1 cuốn HTML để mong viết được 1 web page, và lờm "lũ bạn cờ hó" của bạn đi. Nó sẽ có ích.

"Em không biết bắt đầu từ đâu?"
Nếu đã biết chắc không trả lời được, hãy im lặng đi Levis. Còn hơn là bảo mấy đứa "Hãy làm như vầy..."
Rồi sau đó nói là: Ồ, lúc ấy tôi chỉ nêu ra ý kiến cá nhân thôi.
Tôi là dân ngoại đạo nên cũng không hiểu lắm.
Thực ra tôi có tìm hiểu chút ít và hy vọng chúng giúp ích được cho nữa đời còn lại của bạn.

Đừng bao giờ làm thế nhé Levis. Rất là ác độc đấy.
Stay hungry. Stay foolish.
Design is not just what it looks like. Design is how it works
[Up] [Print Copy]
  [Article]   Làm thế nào để trờ thành một "Siêu Lập trình viên"? 13/09/2014 23:15:13 (+0700) | #22 | 281606
Levis
Member

[Minus]    0    [Plus]
Joined: 14/03/2012 10:31:11
Messages: 27
Location: REPT
Offline
[Profile] [PM] [WWW] [MSN]

ntnguyen wrote:
Đầu tiên, bạn đã khẳng định chắc rằng "Làm thế nào để trở thành 1 siêu lập trình viên?" là 1 câu hỏi "khá trẻ trâu"?
Vậy 2000 views cho cái thread này đều toàn bộ là những "đứa", những "thứ", những "loại" hay chú ý tới mấy câu "trẻ trâu" của bạn nên mới cố gắng tiếp thu hết sao? Bao gồm cả StarGhost?
 

Bằng chứng ở đâu? Có người chỉ vào đọc rồi đi ra, có người đọc và tìm thấy cái gì đó, có người đọc và chẳng nhìn thấy gì, và có người chỉ biết "xem".

ntnguyen wrote:

Thứ hai, nếu đã biết rõ mình là "trái tim bên lề", là không thật sự am hiểu, là dân ngoại đạo, chân ướt chân ráo bước vào IT. Vậy tại sao còn viết cái tut này chỉ dẫn cho mấy đứa nhỏ nữa?
Hại não tụi nó à? Hay spam? Hay là viết cho vui thế thôi?
 
Tôi đã nói rất nhiều lần: Đó là tinh thần chia sẻ và đóng góp. Nếu bạn thấy sai ở đâu, cứ việc phản biện, chứ đừng mang những lý thuyết suông, tư tưởng cố hữu ra để phán xét. Bằng chứng là, đến cái bình luận này của tôi, bạn vẫn không thể nào trả lời được những câu hỏi tôi đã hỏi bạn.

ntnguyen wrote:

Thứ ba, bài viết lúc nào cũng sặc mùi tiền, mùi "đẳng cấp", là "thượng lưu", là "cảnh giới tối thượng" mà không biết rằng để đạt được những thứ đó cần có những bước đi đầu tiên như thế nào?
Ảo à Levis?
 

Bạn không thèm xem những gì tôi đã viết ở trên. Thôi thì tôi quote xuống đây cho bạn "xem" vây:
Về nhận xét của anh cho việc không đưa ra cái khái niệm về "siêu lập trình viên" hay lập trình viên "pro" là do quan điểm của em về cái khái niệm này cũng chưa thực sự rõ ràng. Bởi vì ngay từ đầu em đã nhận xét cái câu hỏi "Làm thế nào để trở thành 1 siêu lập trình viên?" là hết sức điên rồ, và em nghĩ là chưa chắc đã tồn tại 1 "siêu lập trình viên". Thế nhưng theo cách nghĩ của đa số các bạn học lập trình và các bạn làm lập trình hiện tại thì em tin là trong quá trình học tập và làm việc của họ, không dưới một lần họ đã từng ước mơ trở thành 1 "siêu lập trình viên". Có vẻ hơi xa vời và không mấy liên quan nhưng em xin được ví một "siêu lập trình viên" với một vị Phật, vị Tiên hay Bụt trong tín ngưỡng dân gian Việt Nam. Mấy vị này thì chưa có ai gặp được, nhưng đa phần người dân bình thường vẫn luôn tin vào họ và những phép màu của họ. Và họ không ngừng mơ ước "ước gì mình được trở thành Tiên, thành Phật". Thế nhưng chẳng ai có thể định nghĩa được rõ ràng hoặc trả lời được các câu hỏi như "Thực sự thì Tiên, Phật là ai?". Có lẽ Tiên, Phật chỉ là hình tượng được con người tạo nên bằng trí tưởng tượng và thực hiện hoãn mĩ hoá, để nó trở thành 1 cái tấm guơng để cho con người nhìn vào, noi theo và tự sửa mình. "Siêu lập trình viên" cũng thế. Thế nên trong bài viết em không có định nghĩa cụ thể về một "Siêu lập trình viên". Cũng như trong tất cả các giáo điều, giáo lý của các tôn giáo đều khuyên con người ta tu thân hướng thiện để mong thành "chính quả", thì bài viết này của em cũng nhằm mục đích đó, để hướng và động viên mọi người tích luỹ và trau dồi các kiến thức cần có, để khi lãnh hội đủ kiến thức rồi tự bản thân sẽ có một quan điểm riêng, đúng đắn hơn về cái gọi là "Siêu lập trình viên".  

ntnguyen wrote:

Suy nghĩ về Thành Quả và Thành Công đi Levis.
KHÔNG CÓ THÀNH QUẢ SẼ KHÔNG CÓ THÀNH CÔNG.
Đừng có tối ngày ngồi đó mộng tưởng ôm đống tiền rồi đếm bằng cân ký. Thay vào đó tìm 1 cuốn HTML để mong viết được 1 web page, và lờm "lũ bạn cờ hó" của bạn đi. Nó sẽ có ích.
 

Tôi không hề mộng tưởng hay ảo tưởng gì cả. Tôi đến với IT bắt đầu từ niềm đam mê và tình yêu, và tôi cố gắng thu nhặt tri thức, không phải để kiếm tiền, mà để thỏa mãn tình yêu với IT của tôi. Vì vậy tôi không nghĩ đến chuyện tiền bạc gì cả, mà điều tôi quan tâm nhất là tôi có thể tiến xa đến đâu trong con đường chinh phục tri thức.

ntnguyen wrote:

"Em không biết bắt đầu từ đâu?"
Nếu đã biết chắc không trả lời được, hãy im lặng đi Levis. Còn hơn là bảo mấy đứa "Hãy làm như vầy..."
Rồi sau đó nói là: Ồ, lúc ấy tôi chỉ nêu ra ý kiến cá nhân thôi.
Tôi là dân ngoại đạo nên cũng không hiểu lắm.
Thực ra tôi có tìm hiểu chút ít và hy vọng chúng giúp ích được cho nữa đời còn lại của bạn.
Đừng bao giờ làm thế nhé Levis. Rất là ác độc đấy.
 

Ác độc nhất khi mình chỉ biết giữ cho riêng mình và không biết chia sẻ, không biết truyền lửa lại cho thế hệ sau. Đến đây tôi có thể khẳng định rằng: Bạn không hiểu bất cứ điều gì tôi viết. Tôi không viết để cho những người đọc bài viết này ôm ảo tưởng hay mơ mộng viển vông, mà tôi viết để giúp họ biết cách tìm và đạt được tri thức, có tri thức rồi sẽ tự mình tìm ra được con đường đi cho riêng mình, chứ không viết nhằm mục đích dạy người ta kiếm tiền kiếm bạc. Một lần nữa tôi yêu cầu bạn "đọc" chứ đừng "xem", nếu như bạn vẫn muốn tiếp tục tranh luận.
Nếu bạn vẫn nghĩ tôi đang viết bài để dạy người khác cách làm việc kiếm tiền, trở nên nổi tiếng thì xin lỗi, tôi sẽ không tranh luận thêm nữa.
my personal blog:
http://www.ltops9.wordpress.com
(poor english level, but i'm trying to make better)
[Up] [Print Copy]
  [Article]   Làm thế nào để trờ thành một "Siêu Lập trình viên"? 14/09/2014 00:58:54 (+0700) | #23 | 281607
[Avatar]
ntnguyen
Member

[Minus]    0    [Plus]
Joined: 24/07/2014 03:30:40
Messages: 58
Offline
[Profile] [PM]
Lần cuối nhé:
Chú đi ngủ đi Levis ạ.
Tôi thật không lời nào diễn tả chính xác hơn câu nói này, cố chịu đau 1 chút rồi nó sẽ có ích cho chú.

NÀY LEVIS, BẠN NGU NGỐC ĐẾN NỖI KHÔNG THỂ HIỂU NHỮNG GÌ TÔI ĐÃ CHIA SẼ VỚI BẠN. MỘT CÁI NAMESPACE VÀ 1 CÁI LINK VỀ VS SHORTCUT KEYBOARD ĐÃ GIẢI QUYẾT HẾT TẤT CẢ NHỮNG VẤN ĐỀ VỀ KỸ THUẬT LẬP TRÌNH ĐƯỢC NÊU Ở TRÊN.

Cái link tôi đưa tất tần tật về Memory, Register, Debug feature windows và nhiều thứ khác.
Chú càng reply, người ta càng cười chú thôi. Chú chẳng hiểu được những gì mà chính bản thân chú nói cả.

Để tôi dạy đời cho chú biết nhé: Hãy giữ cái đầu lạnh và một trái tim nóng.
Những reply ở trên, mỗi 1 đoạn tôi cách dòng đều là 1 giải pháp cho 1 vấn đề đấy. Cái đầu chú nóng quá, chú tiếc cái thread 2000 views này nên không bình tĩnh nỗi khi bị đã kích.

Chú biết không, người ta trở nên thông thái khi áp dụng những điều người ta biết được một cách chính xác và đúng thời điểm. Càng không giữ được bình tĩnh thì càng rối, mà tâm trí rối bời thì nói gì đến chuyện định hướng tương lai cho mấy đứa nhỏ?

Hồi trước tôi cũng như chú vậy, không thể nào chấp nhận được. Nhưng rồi tôi thấy rằng phải thay đổi đi. Tôi cố gắng, cố gắng dành 5 giây, 10 giây, 20 giây để đọc lại những lời chỉ trích và cảm thấy chúng thật sự hữu ích. Mặc dù tôi ghét chúng thật đấy, nhưng mỗi lần tôi chỉ đọc vài chữ, vài lần tiếp theo là vài chữ nữa, cuối cùng tôi cũng đọc hết câu comment ác độc đấy.

Hãy tìm đọc bài diễn văn của Steve Jobs lúc nhận bằng tốt nghiệp đi, nó sẽ có ích đấy. Còn sau khi đọc xong mà vẫn reply "Nó không nói gì đến lập trình hay debugger, điều đó xa vời, không thực tế, vớ vẫn..."
Thì tôi dám khẳng định với bạn rằng sẽ dùng cái account ntnguyen để đổi lấy cái account của bạn. Hoặc bạn, hoặc tôi sẽ phải rời HVA kèm theo comment chỉ trích không thương xót. Banned nick vĩnh viễn.

Tôi sẽ không reply nữa, mà chú cũng nên thôi đi Levis à. Chú chẳng giúp ích được gì cho ai với cái thread này đâu. Nội dung phản khoa học, phi thực tế. không tin thì cứ translate sang tiếng Anh và viết thành 1 cái Article up lên trên Microsoft đi, sẽ nhận được phản hồi ngay.

Bằng cách quan sát của tôi, tôi nhận thấy rằng tất cả những reply của ntnguyen đều không cần Mod kiểm duyệt, thậm chí là spam. Tôi đã spam mấy lần và mod đều bỏ qua, chắc chắn phải có thứ gì đó rồi. Nếu bạn nói Mod quá bận thì xin lỗi, tôi đã viết chúng hơn 1 tháng rồi đấy.

Tặng cho chú câu này: "Những người không hiểu được sự im lặng của người khác thì cũng chẳng thể hiểu được những gì mà họ nói".
Cảm thấy đau không? Nếu có thì nó thực sự tác động tích cực đến chú rồi đấy.

Như đã nói, tôi sẽ không reply tiếp nữa. Nếu chú không quan tâm đến những tiếng cười vô hình kia thì cứ tiếp tục phản biện reply của tôi đi.
Nó chỉ làm tăng thêm giá trị reply của tôi thôi Levis à.

Chúc chú vui!
Stay hungry. Stay foolish.
Design is not just what it looks like. Design is how it works
[Up] [Print Copy]
  [Article]   Làm thế nào để trờ thành một "Siêu Lập trình viên"? 15/09/2014 16:44:15 (+0700) | #24 | 281618
TQN
Elite Member

[Minus]    0    [Plus]
Joined: 29/06/2006 22:28:01
Messages: 888
Location: Biết làm chi ?
Offline
[Profile] [PM] [WWW] [Yahoo!]
Hai bạn hạ nhiệt xuống đi. Không nên xúc phạm nhau.
[Up] [Print Copy]
[digg] [delicious] [google] [yahoo] [technorati] [reddit] [stumbleupon]
Go to: 
 Users currently in here 
1 Anonymous

Powered by JForum - Extended by HVAOnline
 hvaonline.net  |  hvaforum.net  |  hvazone.net  |  hvanews.net  |  vnhacker.org
1999 - 2013 © v2012|0504|218|