Con gái học lập trình được không? Đó là một câu hỏi nổi lên trong thời đại công nghệ hiện đại. Từ kinh nghiệm cá nhân, mình nghĩ học hay không là do bản thân bạn quyết định. Học lập trình không chỉ giúp phát triển tư duy logic và khả năng giải quyết vấn đề, mà còn mở ra cơ hội nghề nghiệp rộng lớn trong một thế giới kỹ thuật số ngày càng phát triển. Bằng sự kiên trì, tự tin và kiến thức chuyên môn, con gái có thể tỏa sáng và thành công trong lĩnh vực này, đồng thời mở đường cho các thế hệ phụ nữ sau này.
Mình sinh năm 2001, là sinh viên đã tốt nghiệp của Trường đại học Công nghệ Thông tin, chuyên ngành Thương mại điện tử. Nghe đến đây thì các bạn sẽ nghĩ ngành Thương mại điện tử thì liên quan gì đến lập trình đúng không?
Sự thật là có đó, có thể ngành Thương mại điện tử của những trường đại học khác sẽ không dạy nhiều về lập trình. Nhưng bởi vì mình học Đại học Công nghệ Thông tin, nên việc đối mặt với code là không thể tránh khỏi.
Mình sẽ chia sẻ những kinh nghiệm cũng như trải nghiệm thực tế mà một đứa con gái như mình đúc kết được trong quá trình 4 năm học tại trường. Từ đó các bạn nữ có thể cân nhắc xem xét cẩn thận để đưa ra quyết định cho riêng mình nha.
2. Kinh nghiệm thực tiễn
2.1 Hãy trả lời câu hỏi “Bạn có thật sự thích lập trình?”
Mình thấy rất nhiều người học lập trình chỉ vì nghĩ nó là ngành hot, ngành xu hướng của tương lai, hay vì ba mẹ ép buộc, hay đơn giản là chọn bừa. Học một thứ mình không thích không phải là chuyện lạ, có rất nhiều người vẫn có thể hàng ngày làm những điều mình không thích một cách máy móc.
Nhưng lập trình thì khác, nó không hề dễ một chút nào. Ngành Thương mại điện tử của mình không thuần Công nghệ thông tin nên cũng không tính là quá khó, nhưng những ngành khác như Kỹ thuật phần mềm, Khoa học máy tính, Công nghệ thông tin,… đều là những ngành chuyên sâu của lập trình.
Mỗi ngày bạn đều phải đối mặt với đống code vô tri vô giác, viết một chức năng, chức năng lỗi, sửa lỗi, rồi lại viết,… Đó là một vòng lặp vô tận, bạn sẽ làm gì để hoàn thành công việc của mình nếu bạn chả có hứng thú gì với nó.
Mình đã chứng kiến rất nhiều đứa bạn bỏ học giữa chừng chỉ vì không theo kịp chương trình học, nợ môn, chán nản, áp lực.
Có thể bạn sẽ nghĩ đến trí tuệ nhân tạo AI, lúc mình học thì nó chưa quá phổ biến nhưng dạo gần đây thì nó nổi lên như một hiện tượng. Chỉ cần mô tả yêu cầu, và AI sẽ cho bạn chính xác từng dòng code cũng như các thao tác phải thực hiện để chạy được đống code đó.
Nhưng mà phải làm sao nếu bạn không hiểu nguyên lý hoạt động của nó, đến lúc thi cử thì ai cho bạn mang máy tính vào, ai cho bạn tra Google.
2.2 Deadline dồn dập
Ngày đi học mình có một bảng tổng kết tháng, ngày nào có bài tập cần nộp thì ngày đó sẽ hiện chấm xanh.
Và như mọi người đã thấy, deadline bất chấp ngày đêm. Deadline không chừa chủ nhật, một tháng 30 ngày thì hết 15 ngày có bài tập cần nộp, có khi 4 cái bài cần nộp trong 4 ngày liên tục.
Bài tập không hề dễ, mình không thể hoàn thành nó chỉ trong vòng 15 hay 20 phút. Vậy nên thức khuya là điều không thể tránh khỏi. Bạn có thể nhờ bạn bè giúp đỡ, việc đó vẫn giúp bạn qua được thời hạn nộp bài. Nhưng không phải thầy cô nào cũng dễ tính, họ sẽ bất chợt gọi bạn lên và bắt bạn phải làm lại bài tập đó mà không có bất kỳ sự trợ giúp nào.
Những bạn nữ đa số sẽ quan tâm chăm sóc bản thân nhiều hơn những bạn nam. Và việc phải dán mắt vào màn hình máy tính một thời gian dài có thể khiến mắt bạn tệ đi, quần thâm, thiếu sức sống. Thức khuya quá nhiều cũng khiến bạn trông già hơn, mọi nỗ lực chăm sóc da của bạn sẽ trở nên vô nghĩa.
2.3 Tư duy logic là điều không thể thiếu
Theo như những gì mình hay đọc được thì nữ giới sẽ thiên về những môn xã hội, thiên về cảm xúc. Còn nam giới sẽ thiên về các môn tự nhiên và tư duy logic. Nếu bạn đã từng chơi những trò chơi IQ và giải đố thì trong lập trình cũng cần những điều tương tự như vậy.
Lập trình có nhiều mảng, và nghề mà mình nghĩ cần dùng nhiều tư duy logic nhất chính là lập trình viên. Mình học về lập trình web nên mình sẽ lấy ví dụ về web, mình sẽ cố gắng nói dễ hiểu nhất có thể.
Ví dụ về một chức năng đơn giản chính là phân trang, giống như là bạn tìm kiếm trên Google, Google sẽ trả cho bạn khoảng 10 kết quả tìm kiếm ở trang đầu tiên, nếu bạn muốn xem nhiều hơn, bạn sẽ chuyển sang trang thứ hai, hoặc thứ ba, thứ bốn,… Nó không thể trả cho bạn hết một lượt mười mấy ngàn hay mười mấy triệu kết quả trong 1 trang duy nhất.
Vậy thì lập trình viên cần làm gì để hoàn thành chức năng đó?
Giả sử mình có 100 kết quả cần hiện ra, mỗi trang 10 kết quả, vậy chi 100 chia 10 là 10 trang. Mỗi lần mình chỉ hiện 5 trang mà thôi. Các bạn xem hình minh họa bên dưới để hiểu rõ hơn nhà.
Nếu người dùng ở trang đầu tiên, thì các trang tiếp theo sẽ là 2, 3, 4, 5, và đồng thời nút bấm về trang trước cũng bị vô hiệu hóa, bởi vì trang số 1 là trang đầu tiên, không hề có trang phía trước. Mình muốn là trang mình đang xem nó phải nằm ở chính giữa, và bởi vì trang 2 và trang 3 là ngoại lệ nên mình vẫn sẽ giữ nguyên vị trí của nó. Đến trang 4 thì dãy 5 số đã không còn là 1, 2, 3, 4, 5 nữa mà đã đổi thành 2, 3, 4, 5, 6. Lúc này số 4 đã ở giữa.
Và tiếp tục như thế cho đến trang 9, nó cũng ngoại lệ như trang 1, 2 nên không thể là 7, 8, 9, 10, 11 bởi vì chúng ta chỉ có 10 trang mà thôi. Ở trang 10 là trang cuối cùng thì nút “Sau” sẽ bị vô hiệu hóa.
Đó là xong ở phần ý tưởng, nhưng máy tính thì làm sao mà hiểu được ý tưởng của bạn. Bạn phải dùng ngôn ngữ lập trình để giao tiếp với nó. Chưa kể đến việc có hàng trăm cái ngôn ngữ lập trình khác nhau để lựa chọn học.
Bạn sẽ không thể code một phát từ trên xuống dưới, rồi chạy mà không gặp bất kỳ lỗi nào, cụ thể chính là phải “Fix bug” lên bờ xuống ruộng.
Phân trang chỉ là một chức năng cơ bản, logic không quá khó khăn, nhưng những dự án thực tế thì không bao giờ đơn giản như này, chưa kể đến việc đôi khi ngôn ngữ lập trình bạn đang dùng không hỗ trợ cho chức năng bạn làm, nền tảng còn nhiều điểm hạn chế, hoặc thuận toán của bạn quá lằng nhằng khiến trang web bị chậm đi ảnh hưởng đến trải nghiệm người dùng.
Tư duy logic có thể luyện tập, chỉ cần chăm chỉ thì sẽ gặt được quả ngọt. Nhưng mình chỉ sợ bạn nản lòng thôi. Thử hỏi cũng một chức năng, người khác mất 4 tiếng để hoàn thành, bạn mất 8 tiếng vẫn chưa xong. Người khác tan làm chính là tan làm, bạn tan làm về nhà vẫn phải miễn cưỡng tiếp tục công việc còn dang dở, thật sự là áp lực đến phát khóc luôn đó.
Những đứa con trai trường mình nó giỏi kinh khủng, mình lúc nào cũng chỉ biết nhìn nó bằng ánh mắt ngưỡng mộ. Đương nhiên, nữ cũng có bạn giỏi không kém, biết đâu sau này bạn sẽ nằm trong số đó.
2.4 Trở ngại giao tiếp
Môi trường công nghệ thông tin có rất nhiều nam, tỷ lệ nam nữ ở trường mình là 9:1. Mình cảm giác là cái nhà vệ sinh nữ chỉ có mỗi mình mình dùng luôn đó.
Nếu bạn hướng ngoại thì quá tốt, còn nếu bạn vừa hướng nội vừa e thẹn thì mình nghĩ có chút trở ngại. Nếu bạn đi học trong một lớp toàn nam thì kiểu gì bạn chẳng thấy ngại, đôi khi nhờ vả hay bắt chuyện với một bạn nữ thì dễ dàng hơn rất nhiều.
Có hôm mình đi học trong giảng đường gần trăm đứa, xung quanh mình toàn những bạn nam xa lạ, xa xa mới có được vài bạn nữ. Không phải mình không có bạn, mà là bạn mình nó rủ nhau cúp học hết rồi, nó cũng rủ mình nhưng mình siêng đột xuất, vậy nên mình đi học một mình.
2.5 Không nhất thiết phải viết code
Lập trình có nhiều hướng, không nhất định bạn phải làm lập trình viên, các bạn mình là nữ và tụi nó làm tester khá nhiều. Tester đại loại là kiểm thử phần mềm, kiếm ra những lỗi mà lập trình viên bỏ sót hoặc là vâng vâng mây mây những thứ khác. Tester không cần logic dữ dội như lập trình viên, nên các bạn nữ có thể tham khảo.
3. Tâm sự đôi chút
Mình theo hướng lập trình web, bởi vì mình thích mấy thứ logic học thuật này kia nên mình cảm thấy nó khá ổn với mình.
Mình học cũng không khó khăn lắm, không giỏi không dở. Chương trình 4 năm nhưng mình chỉ cần 3,5 năm là đã hoàn thành rồi. Mình cũng không chăm chỉ lắm đâu, đơn giản là mình chỉ đang làm điều mình thích mà thôi. Mình thích công nghệ thông tin, và mình học nó một cách tự nguyện. Có thể sẽ có lúc áp lực mệt mỏi, cũng có quần thâm mắt, cũng bị deadline dí, nhưng mà mình thấy vui.
Vẫn câu nói cũ, trước khi chọn học lập trình thì bạn phải xác định rõ ràng xem bạn có thích nó hay không, học lập trình rất dễ nản, nó không dễ như việc đọc một cuốn sách, mà là đọc một cuốn sách sau đó viết tiếp phần hai cho cuốn sách đó hoặc tìm ra lỗ hỗng của cuốn sách thì đúng hơn.
Bạn bắt buộc phải vận dụng tư duy, suy nghĩ, cân đo đong đếm. Làm gì có cái gọi là việc nhẹ lương cao, sở dĩ ngành IT lương cao là vì nó tốn nhiều chất xám, thế thôi.
Mong là những gì mình viết có thể giúp bạn được phần nào. Chúc các bạn thành công trên con đường mình lựa chọn.
Ai muốn mình review chân thật trường mình thì có thể để lại bình luận nha. Cảm ơn các bạn đã đọc.
Mình mong muốn nhận được sự đóng góp của các bạn về bài viết này, hãy để lại ý kiến của mình để mình có thể cải thiện hơn.