Một sinh viên năm thứ nhất viết cho tôi: “Em đọc blog của thầy và chọn Khoa học máy tính ở đại học. Em muốn xây dựng nghề nghiệp trong phần mềm, nhưng em có khó khăn khi học lập trình. Em không cảm thấy thoải mái và thậm chí tự hỏi bản thân mình liệu đây có phải là điều em muốn hay không. Em bị lẫn lộn. Xin thầy giúp cho.”
Đáp: Đừng sợ lập trình. Phần lớn sinh viên năm thứ nhất thường gặp khó khăn trong lớp lập trình của thầy. Nếu em ở trong lớp cùng các sinh viên dường như biết cái gì đó về lập trình hay đã học viết mã trong trường trung học, cứ bỏ qua họ. Nếu em đưa nỗ lực vào, em sẽ học tốt. Đừng để bất kì ai doạ em và đừng cảm thấy rằng em không khớp trong lớp này. Em đọc lại các bài blog khác của thầy về lập trình đi. Sự kiện là “Viết mã 90% là thực hành và chỉ 10% là khả năng.” Em càng viết mã nhiều, em sẽ càng trở nên thạo hơn. Lí do mà em cảm thấy không thoải mái vì em sợ phạm sai lầm. Nhưng lập trình là cái gì đó em học bằng làm và từ sai lầm em mắc phải. Giống như đạp xe đạp, em sợ rằng em sẽ ngã, nhưng em sẽ ngã, không chỉ một lần mà nhiều lần, cuối cùng em sẽ đạp xe thành thạo. Cùng điều này xảy ra với lập trình, và cách duy nhất để học nó là làm nó và học từ phạm sai lầm. Đừng sợ phạm sai lầm, đó là một phần của việc học.
Là sinh viên khoa học máy tính (CS), em cần biết rằng CS KHÔNG phải là chỉ lập trình mà còn nhiều thứ nữa. Lập trình là tập các lệnh mà em bảo máy tính điều gì phải làm. Về căn bản, máy tính chỉ là công cụ, khi em dùng nó để giải quyết vấn đề trong công nghiệp, bất kể nơi em làm việc. Nếu em học lập trình giỏi, em sẽ thích thú nó vì phần mềm là phương tiện sáng tạo, cũng giống như nghệ thuật, âm nhạc, thơ ca hay viết văn. Máy tính là phương tiện nơi em làm công việc của em, và em có thể tạo ra nhiều thứ. Nếu nghệ sĩ dùng vải vẽ để vẽ tranh, nhạc sĩ dùng nhạc cụ để soạn nhạc; em cũng dùng máy tính để sáng tạo ra tác phẩm riêng của em.
—English version—
Learning to code
A first-year student wrote to me: “I read your blog and select Computer Science in college. I want to build a career in software, but I have difficulty learning programming. I do not feel comfortable and even ask myself whether this is what I want or not. I am confused. Please help.”
Answer: Do not be afraid of programming. Most first-year students often have difficulty in my programming class. If you are in a class with students who seem to know something about programming or have learned to code in high school, just ignore them. If you put in the effort, you will do well. Do not let anyone intimidate you and do not feel that you do not fit in the class. Please read my other blogs about programming. The fact is “Coding is 90% practice and only 10% Ability.” The more you write code, the better you will become. The reason that you feel uncomfortable because you are afraid of making mistakes. But programming is something you learn by doing and from the mistake that you make. Just like riding a bicycle, you are afraid that you will fall, but you will, not one time but many times, eventually you will ride well. The same thing happens with programming, and the only way to learn is to do it and learning from making mistakes. Do not afraid of making mistakes, that is part of the learning.
As a Computer Science (CS) student, you need to know that CS is NOT about just programming but much more. Programming is a set of instructions that you tell the computer what to do. Basically, a computer is only a tool, as you use it to solve problems in the industry, regardless where you work. If you learn to program well, you will enjoy it because the software is a creative medium, just like art, music, poetry, or writing. The computer is a media where you do your work, and you can create many things. If an artist uses a canvas to draw pictures, a musician uses an instrument to compose music; you also use the computer to create your own masterpiece.