文科计算机基础实验班课程作业的第三个晚上,他是怎么做到的?

全文共4286字,阅读时间约7分钟。

我们的记者

李润泽经济学院2018级本科生

信息科学与技术学院2017级本科生杨春旭

周育新信息科学与技术学院2016级本科生

何以诺社会学系2017级本科生

社会学系2018级本科生董家辰

中国语言文学系2018级本科生王小满

在 PyCharm 中点击运行后,谢云腾累得爬上床,让电脑在黑暗中飞速运转。这已经是他为这门文科计算机基础实验课写作业的第三个晚上了。

这是一个网页爬虫操作,需要连续31天爬取“新浪每日热点新闻”页面的新闻内容,并分析字数、图片等信息。由于数据量巨大,运行整个程序最多需要45分钟;再加上校园网不稳定,程序经常报错停止运行。没有任何运气,程序很难成功执行。好在谢云腾第二天早上醒来的时候,终于看到“Process finished with exit code 0”(程序执行成功,正常退出)。

谢云腾的烦恼并非北大独有。由于编程完全融入了文科计算机教学,许多文科学生不得不面对这个陌生的领域。随之而来的是各种不适:老师讲得太快,跟不上;作业没有详细解释,答案难以理解;学生编程被带到了最前沿。

△ 伟明对文科生在BBS学习编程的吐槽

编程返回

事实上,编程并不是它在 2018 年秋季学期第一次进入文科计算课程。

早期的教学计划要求文科学生修读两个学期的文科计算机课程。第一学期讲授计算机基础知识和办公自动化计算机编程基础电脑基础为修课pdf,第二学期讲授编程。2000年以后,随着Office的普及,第一学期的内容变成了计算机基础知识和Office,第二学期提供了包括编程在内的多个课题供学生选择学习。2015年前后,随着毕业学分的调整,文科计算机课程压缩为一学期;与此同时,信息科学与技术学院也开始探索编程回归计算机文科必修课。

2018 年是审判的第三年,也是最后一年。从此,无论是实验班还是基础班,编程都成为了必修课。

但编程的回归并没有受到普遍欢迎,并引发了很多争论。

教学风格是争论的焦点。“老师没有操作代码,直接把课件上的例子展示出来,我们还在看代码含义的时候,已经放了很多幻灯片了。” 国际关系学院2018级本科生张晨和说。他认为编程教学进度太快,效果不好。最好把课程分成两个学期。第一学期详细学习Office,第二学期慢慢学习Python。“就像学习一门语言一样,从学习音标开始。”

“培养科学家和培养实际用户是有区别的。” 负责教授文科计算机基础实验班的邓锡峰老师猜测,第一次教Python的老师可能采取了培养专业“码农”的方法。开发适合文科学生的教学方法需要一个过程。“还有一个问题,就是时间太短了。”邓锡峰分析道。“现在的文科计算机课程已经从原来的两学期课程改为单学期课程,时间缩短导致内容不全,精度不够,学生很容易处于‘半熟’状态。

但他也表示,在课程开始之初,学院就制定了文科生的教学计划,编程语言的选择是特色之一。

“这次的选择经历了一个复杂的决定,但后来我们都选择了 Python。” 邓锡峰说道。与其他编程语言相比,Python具有跨平台、易于入门、数据处理能力强、函数库丰富等优点。正因为如此,近年来它的人气迅速攀升,成为2018年TIOBE编程语言排行榜的年度语言。

△ 流行编程语言百度搜索索引

由于过渡期,2018年秋季学期编程教学没有统一的教学大纲,不同班级的教师自主选择教学方式和内容。“但只要是程序设计,内容基本是一样的。” 邓锡峰说,“可能每个老师对难度的控制是不一致的,但是2019年秋季学期会比较统一。” 同样,试卷也是按班级组织的。教师提出自己的命题,但都包括笔试和机考,按不同比例计入总分。

文科和编程

在邓锡峰看来,“自用编程”是文科生学习编程的主要目的。与“实用程序设计”相比,后者旨在为他人使用,而前者侧重于满足自己的需求。

“比如在处理研究数据的时候,如果Excel不能解决,可以先用Python来解决,然后交给Excel进行可视化。” 他以自己研究的北京交通大数据为例:北京每天有1600万左右的交通数据,Excel根本处理不了,其他软件也不好用。但用Python处理只需要很短的时间计算机编程基础电脑基础为修课pdf,就可以得到各个车站的客流、乘客上下车的时间、不同地区乘客的乘坐偏好等信息。然后展开数据,加上各站的经纬度,结合地图分析哪些地方人流量最多,人流在哪里。这为国民经济的决策提供了保障。

在人文方面,中国传记数据库(CBDB)也为历史研究提供了更多视角。CBDB依靠程序设计和数据库技术,收集了40万余个历代汉字的传记和家谱。通过这种方式,研究人员可以查询一个地方在科举和仕途上的表现,或者连接和分析特定时空的个人创作。

△ CBDB 6.7万已知来历历史人物地理分布图

“如果将这样的技术应用到历史上,很多概念的呈现会更加直观和直观。” 邓锡峰认为,与定性研究相比,编程更多的是用数字和计算的概念来衡量我们所面临的世界。这在一定程度上弥补了中国传统思维的不足。

对于元培学院光华方向2015级本科生魏明杰来说,编程是他的专业。在他学习的量化金融领域,编程起着举足轻重的作用。他说,国外一些面试网站有电脑,要求面试者现场编程。在一次量化金融行业的实习面试中,面试官当场问了一个问题让应聘者写一个程序,并当场对程序进行了点评。

因为当时文科的计算机教学不包括编程,所以魏明杰特意选择了计算机概论B。在他看来,在学校学的编程和工作中使用的编程是有区别的。实际使用的编程肯定比在学校学的编程复杂,但如果没有课程内容作为基础,就无法实际应用。

2012年经济学院本科生唐一博在大四时尝试自学编程,但因为觉得投入产出比太低而放弃。他认为,编程不仅可以依靠效率较低的自学,还希望能得到更有技术的人的指导,让你有问题可以直接问他们。

编程没用?

不过,对于大部分选择工作的同学来说,编程并不是必备技能,也不一定是申请中的锦上添花。

“(就业是否有编程要求)主要看你找什么工作。” 2012级经济学院本科生沉世军介绍,“如果你是从事量化金融或学术界的,对编程的要求还是很高的。但如果你是行业成员、投行、基金、PE(私募股权投资)等,要求不高。” 从本科到研究生,他的编程主要专注于MATLAB、Stata等数据分析软件。但对于学习Python、C++等编程语言,他表示还没有考虑:“暂时联系不上。”

同样,唐一博的股研行业虽然需要相关的程序,但他的公司有专门的IT部门负责研发模块,他基本不需要编程。他告诉记者,股票研究公司在招聘时,除非是量化研究,否则没有编程要求,不会出现“掌握编程优先”的情况。

这也是很多文科生心中的疑惑:如果以后不需要编程,现在花这么多功夫去学又有什么意义呢?

信息科学与技术学院郭伟认为,“无用”往往是“无用”的结果。“如果你能(编程),你就可以主动寻找这样的机会,在工作中展现自己。这个天赋对你的职业发展非常有益。” 他希望同学们不要抱“这东西好像没用,我就不学了。”的想法。“很有可能以后会有用,但如果你没有时间再学习它,你就会错过这个机会。”

同样重要的是编程学习对思维的影响。邓锡峰非常重视文科生数理逻辑和计算思维的培养。“比如把一个大任务分解成几个小任务,或者定义几个函数,每个函数都要做好自己的任务,其实这是一种思维训练。”

信息科学与技术学院2016级本科生纪如意也持相同观点。“编程不等于说话,说话可以含糊其辞,但编程一定要严谨、有逻辑,不能出错。”

火爆全国

当校园正在讨论文科生是否需要学习编程时,编程热已经席卷全国乃至全球。

△“编程”热词的媒体索引

在百度索引中,关键词“编程”用于分析。早在2012年,《节目》的媒体指数就经历了一个高峰,随后多次登上头条。进入2018年,媒体指数迎来高潮。正如郭伟所说:“现在大家都要学编程了。”

“原因很明显。” 郭伟说,“计算机已经广泛应用于各行各业。所以,无论什么行业,你很快都会遇到需要编程的情况。未来编程可能不会那么‘热’了。我想是因为它就像数学,每个人都必须学习。”

邓锡峰认为,编程入门难度的变化也是原因之一。由于软件提供的编程环境降低了编程门槛,“热”已经形成了初步条件。“就像电脑的操作一样,以前是字符界面,进入图形界面后,电脑在全国乃至世界范围内变得更加普及。” 邓锡峰表示,“程序设计是连接逻辑思维、经验思维和计算思维的重要途径,它可以帮助我们更好地理解当今的信息社会。我相信它会成为未来中国大学生必备的基本技能。” “

在哈佛,编程已经成为一门基础课程。CS50是哈佛大学的编程开放课程。它对所有专业的学生开放。它教授多种语言,包括C、PHP、JavaScript、SQL、CSS和HTML。早在2015年秋季学期,它就成为了学校最受欢迎的课程。800多人报名,其中只有10%有编程背景。

△CS50公开课网站

“我相信我们可以做得更好,”邓锡峰说。

去哪儿

“课程压力很大。这是实施编程的代价。” 邓锡峰说:“但我们还是要坚持,我觉得我们走的方向是对的,更多的老师也认可了,这是大势所趋。”

但文科计算机课程仍需改进。更好的教学效果需要更多的时间。由于学校的课时已经很紧张,增加课时是不现实的。引入新技术是提高课堂效率的最佳方式。邓锡峰表示,未来他计划采用MOOC(MOOC)和翻转课堂的形式,将Office和计算机的基本知识放到网上供学生自学,将更多的课堂时间用于编程教学。

同时,计算机课的教学也将引入新的形式。“比如,我们为每个作业制定多个解决方案,学生可以相互比较,看看是否有更好的解决方案来提高学习质量。” 此外,他表示,如果时间允许,他将设计“百种实践,百种讲座”,在每个教学主题中增加一个难度适中的题库,帮助学生通过实践尽快上手编程。

邓锡峰还认为,学生需要改变抵抗力。在文科计算机课程并入编程之前,Office和计算机的基础知识是主要的学习内容。大部分学生已经有了一定的基础,学习起来也比较容易。相比之下,编程显然更加困难。他开玩笑说:“如果这门课程改名为‘计算机 C 入门’,可能很多人心里都会有一个平衡点。”

但他认为,对于文科生来说,编程绝非遥不可及。他说,在Windows流行之前,文科生使用DOS系统学习FoxBASE和FoxPro(编程软件),即使没有可视化界面,但学习效果还是不错的。“当然,文科生的教学方式,比如教学案例、教学内容等需要我们优化,但不能说文科生学不会编程。”

变化还在继续。邓锡峰认为,随着课程本身与文科生的结合更加紧密,编程一定会走进文科生的心中,达到终极目标:“通过编程,文科生可以掌握一门与工作相伴的编程语言,学习,也可以更好地了解当今的信息技术。”

图 1 来自 Unnamed BBS

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论