Blog FOSS by Lê Trung Nghĩa

https://letrungnghia.mangvn.org

Xây dựng lớp học xung quanh mã có tính tương tác

Building a classroom around interactive code

Posted 01 Sep 2016 by Mike Croucher

Theo: https://opensource.com/education/16/9/jupyter-and-sagemathcloud-university-sheffield

Bài được đưa lên Internet ngày: 01/09/2016

Là một đứa trẻ những năm 1980, những kỷ nhiệm thời học trò của tôi bị đổ đầy với việc học cách lập trình trên các máy tính bé tẹo, bị giới hạn như Sinclair ZX Spectrum, Commodore 64, và BBC Micro. Tôi thậm chí đã có chiếc PC-6 from Tandy kích cỡ bỏ túi với màn hình chỉ có 1 dòng. Chúng có thể có giới hạn, nhưng việc học cách lập trình thì các máy tính đó đã trao cho tôi những chìa khóa đi vào thế giới.

Khi tôi 9 tuổi, tôi từng là thành viên của câu lạc bộ máy tính sau giờ học - một trong những ghi chép bài giảng ở đó từng được phân phối trên giấy 2 mặt có mùi đặc trưng (vì chúng tôi không kham được một chiếc máy in thực thụ!) và nơi mà chúng tôi đã viết các chương trình của riêng chúng tôi trong ngôn ngữ BASIC và lưu trữ trong các băng từ hoặc, may mắn cho số ít người, vào các đĩa mềm 5.25 inch. Chúng tôi đã học được về các vòng lặp, logic boolean, các hàm, và các mảng - việc xây dựng các khối của khoa học máy tính cơ bản. Tuy nhiên, quan trọng hơn, chúng tôi đã học được rằng việc lập trình là hơn cả sự kết thúc trong bản thân nó - nó trao cho bạn khả năng khai thác và lý do về thế giới theo các cách thức mà những người không phải lập trình viên sẽ không bao giờ có được. Nếu bạn có thể lập trình nó, thì bạn hiểu được nó.

Bất kỳ ai biết về lịch sử các máy tính sẽ biết rằng thậm chí máy tính xách tay hiện đại rẻ nhất là hàng ngàn lần mạnh hơn so với bất kỳ thứ gì tôi đã truy cập trong những năm 1980. Thậm chí có khả năng để mua một máy tính đầy đủ chức năng, hiện đại với giá thành của một cốc cà phê đặc biệt. Tuy nhiên, ít được biết hơn, là những ghi chép bài giảng đã cũng đã được nâng cấp theo.

Máy tính xách tay Jupyter tự do nguồn mở là cách kết hợp các yếu tố văn bản giàu định dạng, toán học, và có tính tương tác với mã máy tính có khả năng thực thi được - tất cả trong môi trường thân thiện của trình duyệt web. Vài người nghĩ rằng nó sẽ làm thay đổi việc học tập khoa học trong tương lai. Những điều đã đi theo thứ gì đó từ người nhân bản tinh thần thời tuổi trẻ của tôi.

Các bài giảng và các nhà nghiên cứu ở trường đại học của tôi, Đại học Sheffield, đã nhiệt tình áp dụng máy tính xách tay Jupyterr và hệ sinh thái xung quanh nó. Phần sống còn của hệ sinh thái là SageMathCloud, một nền tảng dựa vào đám mây mà mở rộng ý tưởng máy tính xách ty thậm chí còn xa hơn. SageMathCloud cho phép bạn chạy các máy tính xách tay Jupyter không cần phải cài đặt bất kỳ phần mềm đặc chủng nào và cũng cho phép nhiều người sửa cùng một lúc cùng một máy tính xách tay - trao thứ gì đó mà giống như Google Docs cho máy tính xách tay vậy.

Như một phần của chức năng mới về Nghiên cứu Kỹ thuật Phần mềm (Research Software Engineering), tôi đã và đang làm việc để giúp các giảng viên trong các lĩnh vực như khoa học y sinh, vật lý, toán, và khoa học máy tính nắm bắt được máy tính xách tay Jupyter và SageMathCloud. Một trong nhưng kết quả đầu ra của công việc này là tập hợp các sách chỉ dẫn cho các nhà giáo dục về cách sử dụng SageMathCloud để tạo raquản lý khóa học dựa vào máy tính xách tay đó. Nó cũng bao gồm sự tham quan các tính năng và một tập hợp các gợi ý và các mẹo.

Góp ý phản hồi ban đầu từ các khóa học chúng tôi đã phân phối có sử dụng kho công nghệ từng là tuyệt vời. Trích dẫn yêu thích của tôi từ một sinh viên khóa học tin sinh được TS. Marta Milo và tôi phát triển, nơi mà tôi đã dạy cơ bản về lập trình, tin sinh, và điện toán đám mây trong 6 tuần: "Điều khó khăn nhất từ trước tới nay, đầy căng thẳng, bực mình khó chịu, nhưng đầy phần thưởng". Đối với tôi, chúng là những từ của vài người đã học được cách suy nghĩ mới về chủ đề của họ.

As a child of the '80s, my schoolboy memories are infused with learning how to program on tiny, limited computers such as the Sinclair ZX Spectrum, Commodore 64, and BBC Micro. I even had a pocket-size PC-6 from Tandy with a single-line display. Limited they may have been, but learning how to program those machines gave us the keys to the world.

When I was 9, I was a member of an after-school computer club—one where lecture notes were distributed on distinctive-smelling spirit-duplicated paper (because we couldn't afford a real printer!) and where we wrote our own programs in BASIC and stored on tape or, for the lucky few, 5.25 inch floppy disks. We learned about loops, boolean logic, functions, and arrays—the building blocks of basic computer science. More importantly, however, we learned that programming is more than an end in itself—it gives you the ability to explore and reason about the world in ways that non-programmers will never have. If you can code it, you understand it.

Anyone who knows about the history of computers knows that even the cheapest modern laptop is thousands of times more powerful than anything I had access to back in the '80s. It's even possible to buy a modern, functional computer for the price of a fancy coffee. Less well known, however, is that lecture notes have been upgraded too.

The free and open source Jupyter notebook is a way of combining richly formatted text, mathematics, and interactive elements with executable computer code—all from within the familiar environment of the web browser. Some people think that it will change how children of the future learn about science. Things have moved on somewhat from the spirit duplicator of my youth.

Lecturers and researchers at my university, The University of Sheffield, have enthusiastically adopted the Jupyter notebook and its surrounding ecosystem. A crucial part of this ecosystem is SageMathCloud, a cloud-based platform that extends the notebook idea even further. SageMathCloud allows you to run Jupyter notebooks without having to install any specialized software and also allows multiple people to edit the same notebook at once—giving something that looks like Google Docs for the notebook.

As part of Sheffield's new Research Software Engineering function, I've been working to help lecturers in fields such as biomedical sciences, physics, mathematics, and computer science get to grips with the Jupyter notebook and SageMathCloud. One of the outputs of this work was a set of tutorials for educators on how to use SageMathCloud to create and manage a course based on the notebook. It also includes a tour of features and a set of tips and tricks. Collaboratively developed on GitHub, this material will improve and evolve over time.

Initial feedback from the courses we've delivered using this technology stack has been fantastic. My favorite quote comes from a student of a bioinformatics course developed by Dr. Marta Milo and me, where we taught the basics of programming, bioinformatics, and cloud computing in six weeks: "The hardest thing ever, stressful, frustrating, but very rewarding." To my ears, they are the words of someone who's just learned a new way of thinking about their subject.

Dịch: Lê Trung Nghĩa

letrungnghia.foss@gmail.com

 

Bạn đã không sử dụng Site, Bấm vào đây để duy trì trạng thái đăng nhập. Thời gian chờ: 60 giây