Một số kinh nghiệm học lập trình


Được đăng vào ngày 13/03/2016 | 0 bình luận
Một số kinh nghiệm học lập trình
3 (60%) 3 votes

Mình có một người bạn không học chuyên ngành Công nghệ thông tin nhưng có tự học lập trình ở nhà. Sau 3 tuần tự học thì bạn ấy bảo mình lập trình là một lĩnh vực quá khó. Đối với những người nói lập trình là dễ thì một là họ đã làm lập trình quá lâu rồi nên không thể nhớ được cái hồi mới học nó như thế nào, hai là họ là thiên tài thật sự, và ba là họ đang xạo thôi.

Mình cũng từng như vậy, mình cũng từng phải đối mặt với những bài toán mà có lúc mình nghĩ là “bài này chỉ có trời mới biết giải”. Mình cũng từng nghĩ hay là bỏ, không theo nghề code nữa bởi vì thực ra lúc mới học thì những bài toán mà bạn bí có rất nhiều người giải được một cách dễ dàng nên bạn thường có suy nghĩ chắc là cái đầu của mình không đủ thông minh. Nhưng thực ra thì nó chả có ý nghĩa gì cả, người ta làm được, làm nhanh hơn mình và giỏi hơn mình không có nghĩa là mình phải bỏ cuộc. Chỉ cần bạn có nỗ lực ngày qua ngày, bạn sẽ đạt được mục tiêu thôi. Thế giới xung quanh chúng ta vẫn đang có những người làm được những thứ được coi là không thể đấy thôi.

Tuy nhiên nếu những thử thách này vẫn quá khó để bước qua thì dưới đây là một số mẹo để bạn có thể giải quyết chúng một cách dễ dàng hơn:

Tham gia vào cộng đồng

Thói quen thích làm một mình phải bỏ đi, bạn không đủ sức để có thể giải quyết tất cả mọi thứ. Bạn phải tìm kiếm và kết bạn với những coder khác. Có thể là tham gia các buổi meetup, diễn đàn, chatroom…

Hơn nữa, bây giờ là thời đại của phần mềm mã nguồn mở (Open Source), bạn thấy khẩu hiệu của blog Phở Code chứ? 🙂 Những sự kiện gần đây như Microsoft đưa SQL Server lên Linux, hay ngôn ngữ Swift của Apple đã trở thành mã nguồn mở… cho thấy thời đại của mã nguồn mở đã đến, mà đã là mở thì chắc chắn cộng đồng của nó rất đông đảo, thế nên không có lý do gì mà bạn phải ngồi tự mày mò giải quyết tất cả mọi thứ được.

Cải thiện kỹ năng tìm kiếm

Một trong những kỹ năng quan trọng nhất của dân code đó là khả năng tìm kiếm thông tin trên Google. Đây là một kỹ năng, mà đã là kỹ năng thì chỉ có một cách học duy nhất là phải rèn luyện. Ngành công nghệ phần mềm đã tồn tại được vài chục năm rồi, thế nên chắc chắn sẽ có những người đã từng gặp phải những vấn đề mà bạn đang đối mặt ngay lúc này, và rất nhiều khả năng là họ đã lên mạng nhờ cộng đồng và giải quyết thành công những vấn đề đó. Bạn có thể tìm kiếm những cách giải quyết của họ trên Internet, còn nếu không thì bạn vẫn có thể tham gia các cộng đồng và đặt câu hỏi ngay.

Mới bắt đầu thì chỉ nên tập trung vào một ngôn ngữ

Số lượng ngôn ngữ lập trình và các công cụ rất nhiều nên người mới học rất dễ bị choáng ngợp. Nhưng nhìn chung thì chúng cũng tương tự nhau rất nhiều, thế nên khi mới bắt đầu học thì bạn chỉ nên tập trung vào một ngôn ngữ duy nhất thôi và cái mà bạn thật sự cần học là tư duy lập trình, chỉ cần bạn có được tư duy lập trình thì bạn có thể học bao nhiêu ngôn ngữ cũng được.

Đơn giản hóa vấn đề

Nếu bạn không hiểu rõ những gì mình phải làm thì bạn sẽ chẳng làm được gì đâu. Khi đối diện với một bài toán, cách tốt nhất là chia nhỏ bài toán đó ra thành những bài toán nhỏ hơn, dễ hơn, và giải chúng từng bài một. Bạn cũng có thể dùng mã giả trước khi viết code.

Nghỉ ngơi đúng lúc

Ngành nghề nào cũng vậy thôi, khi bạn làm việc quá nhiều, bạn sẽ mệt mỏi, lúc đó thì đừng ngần ngại đứng dậy, đi qua đi lại quơ tay quơ chân để refresh lại cơ thể. Chứ nếu đầu óc đã mệt mỏi mà bạn vẫn cứ cố thì cũng chẳng làm được thêm gì đâu.

Kiên trì

Nếu bạn đã đam mê bất cứ thứ gì thì sẽ không có gì có thể ngăn cản bạn. Lập trình là một lĩnh vực khó, bởi vì khi bạn giải được một bài toán, thì một bài toán khó hơn sẽ tìm đến và thử thách bạn. Bạn hãy cứ xem những thử thách này là một niềm vui và phần thưởng dành cho bạn sẽ không nhỏ đâu.

Trên đây là một số kinh nghiệm học lập trình của mình, hy vọng có thể giúp được bạn ! 🙂







Trả lời


Lưu ý: bọc code trong cặp thẻ [code language="x"][/code] để highlight code.


Ví dụ:


[code language="cpp"]


    std::cout << "Hello world";


[/code]



Các ngôn ngữ được hỗ trợ gồm: actionscript3, bash, clojure, coldfusion, cpp, csharp, css, delphi, diff, erlang, fsharp, go, groovy, html, java, javafx, javascript, latex, matlab, objc, perl, php, powershell, python, r, ruby, scala, sql, text, vb, xml.

Thư điện tử của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *