Thế giới của chúng ta đang chuyển động với một tốc độ cực kỳ nhanh, nơi công nghệ được quan tâm, đặc biệt là ở Hoa Kỳ. Nói chung, đây là một điều tốt, nó tạo ra nhiều tiện ích hơn, các công nghệ mới để cải thiện chất lượng cuộc sống, nhiều việc làm hơn, v.v. Nhưng, chúng ta đang gặp phải một vấn đề nhỏ: chúng ta cần nhiều nhân lực hơn.
Tại Hoa Kỳ, theo Cục Thống kê Lao động (thông qua ComputerWorld), có hơn 500.000 vị trí máy tính chưa được đào tạo (hãy nhớ rằng đây chỉ là ở Hoa Kỳ, trên toàn thế giới rộng lớn hơn nhiều) trong các chuyên ngành kỹ thuật phần mềm khác nhau, Công nghệ thông tin, Kỹ thuật điện (cụ thể là việc tạo ra phần cứng), v.v. Không cần phải nói, có một nhu cầu lớn về việc làm trong lĩnh vực này, nhưng không có đủ người biết cách lập trình, quản trị cơ sở dữ liệu, tạo ra các hệ thống để chống lại các cuộc tấn công mạng, v.v.
Vậy, chúng ta làm gì?
Khoa học máy tính trong các khóa học trực tuyến
Phản ứng áp đảo đối với việc thiếu người có kỹ năng đảm nhận công việc điện toán của chúng tôi là giáo dục miễn phí. Và đó là phản ứng rõ ràng cho một vấn đề như thế này: cung cấp giáo dục miễn phí cho một lĩnh vực cụ thể và chỉ có thể mọi người sẽ đến, học hỏi, thực hành các kỹ năng của họ và cuối cùng, có được một công việc trong lĩnh vực điện toán. Bây giờ, không có gì sai với giáo dục Khoa học Máy tính, ngoại trừ có lẽ thực tế là thị trường giáo dục điện toán không cung cấp một con đường rõ ràng cho một sinh viên và chúng tôi đang nói dối với bất cứ ai đăng ký.
Đầu tiên, thị trường giáo dục điện toán không có một hướng dẫn rõ ràng cho một công việc trong điện toán. Có rất nhiều khóa học và chương trình miễn phí xuất hiện ở khắp mọi nơi, miễn phí. Bạn có thể tìm thấy chúng tại Khan Academy, Coursera, edX, CodeAcademy, Code School, Code.org, Udacity, Team Treehouse, FreeCodeCamp, The Odin Project, và nhiều nơi khác nữa. Và mặc dù điều này mang lại cơ hội học tập dồi dào, nhưng không có nhiều cơ hội để tiến bộ - tất cả những nơi này sẽ dạy cho bạn những điều cơ bản về mã hóa (ngoại trừ FreeCodeCamp và có thể là Udacity), nhưng sẽ không đưa bạn đi xa hơn thế.
Có rất nhiều sự nản lòng trong lĩnh vực này. Thị trường bắt đầu mọi người bắt đầu viết mã rất đông đúc và không có nhiều tài nguyên cho các cấp độ kỹ năng ngày càng cao hơn. Và đây là một điều tốt: sinh viên có thể truy cập web, tra cứu tài liệu và cố gắng tự mình tìm ra một vấn đề. Nhưng, đây là vấn đề: nhiều khóa học trong số này không thuộc lĩnh vực giảng dạy giải quyết vấn đề. Họ cầm tay cho đến cuối cùng (tất nhiên không bao gồm một vài người) và sau đó thả học sinh ra khỏi một lãnh thổ nơi họ không quen thuộc.
Như đã nói, các nhà giáo dục điện toán, đặc biệt là các MOOCs (Các khóa học trực tuyến mở lớn), cần phải thay đổi bánh răng. Cú pháp là quan trọng, nó có vị trí của nó. Nhưng việc dạy một sinh viên cách khắc phục các vấn đề trong lập trình sẽ kéo dài sinh viên đó suốt đời, mang lại cho họ công cụ để liên tục thích nghi với các công nghệ và khuôn khổ mới sắp ra mắt. Cung cấp cho sinh viên các kỹ năng giải quyết vấn đề trong lập trình sẽ tạo ra các lập trình viên chất lượng có thể mang lại chất lượng để làm việc trong lực lượng lao động.
Chúng ta cần ngừng nói dối học sinh
Một khía cạnh khác khiến sinh viên không thể tham gia vào ngành điện toán là chúng ta thực sự đang nói dối họ. Là một nền văn hóa, bạn sẽ không tin bao nhiêu lần chúng ta đập vào đầu học sinh rằng việc viết mã là dễ dàng. Tin tức chớp nhoáng: không dễ dàng chút nào.
Tôi không biết một người đã chọn lập trình và ngay lập tức nhận được nó mà không gặp rắc rối gì. Tất cả chúng ta đều ở dưới đáy thùng, đập đầu vào tường chỉ cố gắng tìm ra cách lập trình hướng đối tượng hoạt động. Và mặc dù bạn có thể tham gia các khóa học, điều đó không nhất thiết có nghĩa là bạn là một chuyên gia. Ngay cả các nhà phát triển cao cấp cũng có vấn đề với mã. Thậm chí, họ dành phần lớn thời gian để nhìn chằm chằm vào đoạn mã, tự hỏi tại sao nó không hoạt động và sau đó dành một lượng thời gian đáng kể để cố gắng làm cho đoạn mã đó hoạt động. Tóm lại, đó là những gì lập trình.
Nhưng, chúng tôi nói với các sinh viên mới và sắp tới hoàn toàn ngược lại. Không có gì khó khăn, chúng tôi nói. Nhiều video hướng dẫn, thậm chí từ các nhà giáo dục đã nói ở trên, sẽ cho bạn biết rằng mã hóa dễ như đi bộ. Đó là lý do tại sao nhiều người sẽ quan tâm đến ý tưởng mã hóa, được kết nối với một khóa học trực tuyến và sau đó thả một hoặc hai tuần sau khi họ quyết định rằng họ không nhận được nó.
Chúng tôi cần phải thẳng thắn với sinh viên. Viết mã là khó, nhưng con đường học cách làm nó rất bổ ích. Trong hai, ba năm, việc có thể tự tạo một trang web ngay từ đầu là một trải nghiệm không giống ai. Nhưng, con đường để đến đó thật khó khăn, giống như bất cứ điều gì trong cuộc sống.
Nếu chúng ta thẳng thắn với những sinh viên như vậy, chúng ta có thể bắt đầu tạo ra một vết lõm ở 500.000 vị trí chưa được đào tạo đó.
Nhưng, nó không dừng lại ở đó. Không, chúng tôi thực sự phải giải quyết vấn đề khiến mọi người quan tâm đến điện toán.
Trường hợp giáo dục khoa học máy tính
Nếu chúng ta sẽ giải quyết vấn đề này trong hai thập kỷ tới, giáo dục Khoa học Máy tính cần được giới thiệu ngay từ khi còn nhỏ. Đó không phải là điều cần phải đợi cho đến khi một học sinh từ 16 tuổi trở lên. Fox News đã viết một ý kiến hấp dẫn, có tiêu đề Đảm bảo an ninh quốc gia của chúng tôi: Trường hợp cho giáo dục khoa học máy tính . Trong đó, các tác giả Hadi Partovi và Erin Siefring nói:
Như bạn có thể thấy, những vị trí chưa được đào tạo này đang khiến quốc gia chúng ta gặp nguy hiểm. Nhưng, tại sao những vị trí này không được lấp đầy? Theo Liên minh Giáo dục Khoa học Máy tính, có ít hơn 43.000 sinh viên khoa học máy tính tốt nghiệp từ các trường cao đẳng và đại học vào lực lượng lao động.
Tại sao lại thế này?
Tôi tin chắc rằng phần lớn là vì chúng tôi không giới thiệu cho trẻ em K-12 lập trình và tất cả những gì về nó. Đây là vấn đề: chúng tôi chưa bao giờ gặp vấn đề như thế này trước đây, máy tính và lập trình chưa bao giờ lớn đến thế. Có rất nhiều thứ khác mà sinh viên được khuyến khích, và thường, công nghệ bị loại bỏ khỏi bức tranh đó bởi vì, tốt, công nghệ như thế này chưa bao giờ lớn như thế này cho đến những năm gần đây.
Có một vấn đề khác với con số đó là tốt. Học lập trình từ các trường cao đẳng và đại học không phải lúc nào cũng là con đường tốt nhất, vì các tổ chức này chậm hơn khu vực tư nhân nhiều năm. Các tổ chức giáo dục này không theo kịp tốc độ của khu vực tư nhân trong công nghệ.
Đó là lý do đã đến lúc bắt đầu đưa nó vào chương trình giảng dạy ở trường, giới thiệu các khái niệm lập trình cho trẻ sớm.
Đây là một sự thật thú vị khác từ một nghiên cứu được Google công bố gần đây, như được chỉ ra bởi bài báo của Fox News:
Không cần phải nói, không có một sự nhấn mạnh lớn về khoa học máy tính trong trường học, và đó là một vấn đề. Đã vào năm 2016, máy tính điều hành một phần lớn cuộc sống của chúng ta. Xe của chúng tôi được điều hành bởi hệ thống máy tính, chúng tôi dành phần lớn thời gian để làm việc hoặc chơi trên máy tính dưới hình thức này hay hình thức khác, chúng tôi dành nhiều thời gian để giao tiếp trên máy tính di động, v.v.
Đã đến lúc chúng ta tích hợp giáo dục khoa học máy tính vào chương trình giảng dạy sớm. Chúng ta cần bắt đầu dạy cho trẻ em ở mọi lứa tuổi cách sử dụng vũ khí này trong tương lai. Và nơi bắt đầu của điều đó là nhấn mạnh vào nó trong giáo dục K-12. Chung ta se lam như thê nao? Thật khó để nói, nhưng nó sẽ có một hành động của Quốc hội.
Đây là phần đáng sợ: Nhật Bản gần đây đã thực thi luật pháp yêu cầu mọi sinh viên học khoa học máy tính. Khoa học máy tính là một phần mạnh mẽ của giáo dục K-12 tại Vương quốc Anh. Không chỉ vậy, mà ngay cả Đức cũng đang xem xét các sáng kiến tương tự.
Chính phủ Hoa Kỳ rất cần cung cấp tài chính cho giáo dục khoa học máy tính K-12 rất sớm, hoặc chúng ta sẽ nhanh chóng bị tụt hậu về điện toán trên thế giới. Đã đến lúc bắt đầu dạy con cái chúng ta rồi.
Và đó không phải là một nơi tốt để được. Ở tất cả.
