16/09/2018, 23:39

#NgưngẢoTưởng Nếu Bạn Muốn Trở Thành Lập Trình Viên.

Vạn sự khởi đầu nan, muốn trở thành lập trình viên, ai cũng nghĩ gian truân muôn phần. Nhưng thật sự, để trở thành lập trình viên có khó như mọi người nghĩ không? Không có gì là khó cả, chỉ đơn giản là bạn cất đi hết suy nghĩ sai về các lập trình viên đi, việc bước trên con đường sự ...

Vạn sự khởi đầu nan, muốn trở thành lập trình viên, ai cũng nghĩ gian truân muôn phần. Nhưng thật sự, để trở thành lập trình viên có khó như mọi người nghĩ không? Không có gì là khó cả, chỉ đơn giản là bạn cất đi hết suy nghĩ sai về các lập trình viên đi, việc bước trên con đường sự nghiệp lập trình viên sẽ đơn giản hơn rất nhiều.

Chúng ta sẽ code chứ không phải ngồi lấy đạo hàm trên máy tính.

“Em muốn học lập trình à, em có giỏi toán không mà muốn trở thành lập trình viên?”. Đây sẽ là câu nói của hầu mọi người khi nghe về ước mơ của bạn. Mặc định trong đầu họ rằng, Muốn trở thành lập trình viên, bạn phải giỏi toán. Nếu bạn hỏi tôi, để trở thành một lập trình viên thì có cần phải giỏi toán không, tôi sẽ trả lời: Còn tùy, nhưng thường là không.

Hãy nhớ, nếu trở thành lập trình viên, chúng ta  sẽ dành hầu hết thời gian của mình để viết code, không phải là tính toán, và kiến thức toán học của bạn thì không tỷ lệ thuận với các kỹ năng lập trình.

Đừng hiểu sai ý tôi, chúng ta vẫn sẽ cần kiến thức cơ bản về đại số, nhưng chỉ cần ở mức căn bản, và vâng nó chỉ là đại số mà thôi.

Tuy nhiên, nếu bạn đang muốn tạo ra một sản phẩm nào đó liên quan đến các kiến thức toán học hoặc vật lý cao cấp hay đồ họa máy tính, thì bạn mới thực sự cần đến toán học. Nhưng bạn đừng lo, vẫn còn hàng trăm ngành khác cần đến lập trình, mà chẳng yêu cầu bạn nhớ hết cuốn Đại Số 12.

Lập trình viên = IQ 200?

Mọi người nhìn các lập trình viên như một sinh vật lạ. Dành hầu hết thời gian ngồi trên máy tính và viết những dòng code mà không mấy ai hiểu được. Chắc bọn họ phải thông mình và tài giỏi lắm mới có thể trở thành lập trình viên.

Điều này không chính xác. Yếu tố về sinh học đó có thể giúp bạn học lập trình dễ dàng hơn, nhưng nó không giúp bạn tiến xa hơn trên con đường sự nghiệp của mình, nó phụ thuộc rất nhiều vào niềm đam mê của bạn. Tôi không phải là một người quá thông mình, nhưng tôi có thể code bất kỳ trang web nào đang có trên thị trường, không phải vì tôi giỏi, chỉ bởi vì khi bắt đầu học lập trình, tôi đã không quan tâm đến việc mình bị thất bại bao nhiêu lần, điều quan trọng là tôi biết học từ những sai lầm đó, đó là cách cơ bản nhất để một lập trình viên có thể tiến bộ.

Bất kỳ ai biết cách truyền đạt suy nghĩ thì đều có thể học lập trình. Bởi vì trong phần sâu cốt lõi của nó, lập trình cũng là một “ngôn ngữ”. Và sự tồn tại của nó thì chỉ với mục đích duy nhất : Giúp bạn có thể giao tiếp được với máy tính, hoàn thành một yêu cầu hoặc hành động do bạn đưa ra. Cũng giống hệt như việc giao tiếp giữa người với người vậy, thay vì nói chuyện với nhau, chúng ta nói chuyện với máy tính thông qua bàn phím và các ngôn ngữ lập trình, thật đơn giản đúng không nào!

Đã thi đỗ đại học chưa mà đòi làm lập trình viên?

Để trở thành kỹ sư hay bác sĩ, hầu như mọi người đều bắt đâu bằng cách đỗ vào những trường ĐH hàng đầu. Nhưng với ngành lập trình thì Không. Trường Đại học không thể giúp bạn trở thành lập trình viên giỏi. Công nghệ sẽ luôn thay đổi từng giây, và các kiến thức bạn học tại trường ĐH sẽ trở nên cũ đi từng ngày. Nhưng may thay, chúng ta đã có Internet, bạn có thể học  lập trình từ những lập trình viên đầy nhiệt huyết, mà không phải từ những giảng viên tại các trường đại học.

Xin nhắc lại, tôi không nói rằng các trường đại học không thể dạy bạn bất cứ điều gì. Một giáo sư hoặc giảng viên đại học chắc chắn có thể giúp bạn hiểu nhanh hơn về các lý thuyết và khái niệm như là lập trình hướng đối tượng (Object Oriented Programming), và tạo ra một chút thuận lợi mà bạn cần khi bắt đầu tham gia vào lĩnh vực này. Ở đây sẽ có các kiến thức cơ bản nền tảng cho bạn, nhưng nó sẽ không đủ, để có thể áp dụng sau này.

Và một điều chắc chắn, bạn phải thành thạo khả năng tự học, nếu muốn theo đuổi ngành lập trình. Không giống như những ngành nghề thuộc lĩnh vực khác, ngành lập trình luôn luôn phát triển với tốc độ như vũ bão, và chỉ bạn mới có thể quyết định xem liệu mình có thể luôn bắt kịp nó hay không mà thôi.

Những dòng code sẽ coi thường nữ giới?

Nhiều người nghĩ rằng, lập trình viên là một ngành phức tạp và nặng nhọc. Hình ảnh hiện lên trong đầu họ luôn là một chàng trai cùng với cốc cafe và những đêm thức trắng bên máy tính. Và phụ nữ thì không hợp với lập trình. Điều đó không hoàn toàn chính xác. Giới tính không thực sự quan trọng, nếu bạn có đủ đam mê với lập trình. Đôi khi, tính cẩn thận và tỷ mỹ lại là thế mạnh của các nữ lập trình viên. Bật mí cho bạn rằng, trong danh sách 100 lập trình viên có ảnh hưởng nhất thế kỷ 21, không thiếu những cái tên của các lập trình viên nữ tài năng:

Ada Lovelace có thể được xem là lập trình viên đầu tiên trên thế giới.
Grace Murray Hopper đã phát triển trình biên dịch đầu tiên cho ngôn ngữ lập trình.
Adele Goldstine đã góp phần tạo nên máy tính điện tử đầu tiên trên thế giới.
Jean E. Sammet là người đã phát triển ngôn ngữ lập trình FORMAC, một biến thể của ngôn ngữ FORTRAN. Hay Marissa Mayer là một trong những lập trình viên đầu tiên của Google.

Bật mí các bạn nữ một chút nhé, ở một nơi toàn đàn ông, phụ nữ chúng ta sẽ cực kỳ quan trọng đấy.

Chỉ cần học ngôn ngữ lập trình tốt nhất thôi là đủ.

Theo bạn,ngôn ngữ lập trình nào tốt nhất? C#,Java hay PHP? Bạn không trả lời được đúng không, bởi vì giữa các ngôn ngữ lập trình, sẽ chẳng bao giờ có ngôn ngữ lập trình tốt nhất.  Ngôn ngữ lập trình tốt nhất khi và chỉ khi ngôn ngữ ấy phù hợp với mục đích hiện tại của bạn cho công việc hoặc tương lai. Hay nói cách khác, không có ngôn ngữ lập trình nào gọi là tốt nhất cả, vì còn tùy thuộc vào  bạn muốn làm gì cùng với nó.

Tuy nhiên, có những ngôn ngữ tuyệt vời dành cho người mới bắt đầu. Python là một trong số đó vì nó đơn giản, dễ đọc và linh hoạt. Java cũng là một ngôn ngữ dễ học và tốt cho tất cả mọi người, nó có một thư viện tài liệu phong phú và một cộng động hoạt động năng nổ, hoặc bạn cũng có thể nhảy vào học C# giống như tôi đã làm. Trên tất cả, bạn nên quyết định lựa chọn công cụ của mình dựa trên tốc độ thực thi của ngôn ngữ, các đặc trưng riêng, khả năng tương thích, và khả năng bảo trì, v.v…

Chỉ cần mất vài tuần là học xong lập trình đó mà.

Làm ơn ngưng ảo tưởng vì điều này. Vài năm trở lại đây, sự thành công của Fappy bird đã mang đến một làm gió mới cho ngành lập trình game Việt Nam. Nhiều bạn trẻ khao khát cố gắng học một ngôn ngữ lập trình trong một khoảng thời gian ngắn rồi nhận ra rằng họ không có khả năng tạo ra một trò game tương tự Fappy bird trong vòng vài tuần lễ. Và sau đó, họ sẽ nản chí, và tự nhận mình là một kẻ ‘bất tài’ và từ bỏ giấc mơ trở thành một lập trình viên game.

Thực ra, bạn có thể dành vài tuần để học lập trình, nhưng bạn sẽ mất nhiều năm để trở nên tinh thông việc lập trình đó. Cũng giống như các họa sĩ vẽ tranh, lập trình yêu cầu bạn phải có đam mê và kiên trì, và hầu hết những sản phẩm mà bạn tạo ra vào lúc đầu có thể sẽ chẳng được người ta sử dụng. Tuy nhiên, nếu bạn luôn cố gắng hoàn thiện mình, bạn sẽ phải tiến từng bước một. Để trở thành một lập trình viên giỏi, bạn nên cảm thấy thoải mái mỗi lần gặp thất bại, bởi vì đó là cách duy nhất để giúp bạn tiến lên.

Mình chắc chắn chả thể viết được hàng ngàn dòng code như vậy.

Kể cho bạn nghe một kỷ niệm, lần đầu tiên khi nhìn thấy mã nguồn mở của một website, tôi đã bị sốc, chắc chắn rằng 4000 dòng code trong đó là quá nhiều đối với tôi. Tuy nhiên, khi tôi hiểu ra rằng, mọi dòng code không phải mới hoàn toàn mà nó giống với vô số website khác đang tồn tại. Nếu bạn để ý quan sát một chút, thì bạn sẽ nhận ra rằng chúng chỉ có một mớ code bao gồm các câu lệnh lặp lại, các phương thức và vòng lặp mà thôi.

Tất cả chỉ có vậy; các lập trình viên hầu như đều sử dụng cùng những thứ mà bạn đã học trong các khóa học sơ cấp và trung cấp để thực hiện tất cả các giải pháp từ đơn giản đến phức tạp. Và một khi bạn đã quen với nó, bạn sẽ cảm thấy rằng 10,000 dòng code cũng chỉ là trò trẻ con. Bạn có thể tạo ra chúng một cách rất nhanh chóng!

Sẽ chẳng ai tuyển một lập trình viên không có kinh nghiệm

Nếu chỉ nhìn thoáng qua, hầu hết các vị trí tuyển dụng lập trình viên, và bạn có thể nhìn thấy họ sẽ yêu cầu vài năm kinh nghiệm và phải thành thạo hàng tá những ngôn ngữ lập trình cho vị trí đó. Nhưng thực ra nó không đến nỗi khắc nghiệt như vậy. Bạn luôn có thể nhận lấy một công việc lập trình tương xứng với kinh nghiệm coding của mình, nhưng bạn không thể chỉ ngồi đó và đợi được.

Freelancer cũng là một nơi tuyệt vời để bắt đầu, bởi vì hầu hết khách hàng ở đó thường rất khó tính. Dù theo cách nào đi nữa thì cũng là điều tốt, vì bất kỳ ai cũng phải bắt đầu từ một nơi nào đó, nhưng bạn phải luôn luôn chủ động trong công việc.

Để trở thành lập trình viên, thực sự không đơn giản, nhưng cũng không quá khó như mọi người suy nghĩ. Chỉ cần bạn có đam mê và dám đối mặt với thử thách, thành công sẽ luôn sẵn sàng chào đón bạn. Việt Nam và cả thế giới đang trong giai đoạn bước qua ngưỡng cửa công nghiệp công nghệ cao, trong tương lai sẽ thiếu hàng triệu lập trình viên. Đón đầu xu hướng và đi trước thời đại luôn đem lại thành công rực rỡ.  Bạn đã sẵn sàng cùng topITworks bước vào kỹ nguyên công nghệ chưa?

Techtalk via codinghorror

0