来自 Stepik 的爱:Hyperskill 教育平台

我想和你谈谈为什么我们修理管道的次数比写论文的次数还要多,关于教授编程的不同方法,以及我们如何尝试将其中一种方法应用到我们的新产品 Hyperskill 中。

如果您不喜欢冗长的介绍,请直接跳到有关编程的段落。 但会少一些乐趣。

来自 Stepik 的爱:Hyperskill 教育平台

抒情撤退

让我们想象一下一位年轻的玛莎女士。 今天玛莎本来打算安静地洗点水果看电影,但运气不好:突然她发现厨房的水槽被堵塞了。 目前尚不清楚如何处理这个问题。 你可以无限期地推迟这个问题,但现在有空闲时间,所以玛莎决定立即处理这个问题。 常识表明有两种选择:a) 打电话给水管工 b) 自己处理。 这位年轻女士选择了第二个选项,并开始研究 YouTube 上的说明。 根据用户 Vasya_the_plumber 的建议,玛莎查看了水槽下方,看到了一条由多个部件组成的蜿蜒塑料管。 女孩小心翼翼地拧开水槽底部的一块,但什么也没发现。 下一段管道被一种未知物质紧紧堵塞,即使是在桌子上找到的叉子也无法应对堵塞。 互联网上的专家给出了令人失望的预测:该部分必须更改。 玛莎在地图上找到了最近的商店,带着那根倒霉的烟斗,买了同样的一根,只是新的。 根据卖家的建议,玛莎还买了一个新的过滤器来预防。 任务完成:水槽再次正常工作,同时它的主角学到了以下内容:

  • 您可以自行拧松和拧紧水槽下方的管道;
  • 最近的水管店距离马西娜的公寓一公里半。

很有可能,玛莎甚至没有注意到自己学到了多少新东西,学到了多少新东西,因为她担心自己以后的舒适度,同时又看电影、洗苹果。 下次再出现类似的问题时,女孩解决起来会快很多倍。 事实上,玛莎不仅让世界恢复了正常状态,而且还让世界恢复了正常状态。 她学习了 归纳地,即在特殊情况下,并且 以实践为导向,就是通过做事而不是提前详细地研究它。

一切都可能有不同的结果。 假设玛莎晚上坐在椅子上,突然意识到她在精神上和身体上都没有做好水槽堵塞的准备。 她很快就进入了水管工学院,学习水槽、管道和可能的连接的类型、管道问题的分类以及可能的解决方案。 玛莎晚上不睡觉,背诵术语和名字。 也许她甚至正在撰写一篇关于理论管道科学的博士论文,其中讨论了橡胶垫圈。 最后,收到证书后,玛莎自豪地环视厨房,充满信心,现在即使是水槽上最轻微的问题也将在弹指间解决。 在这种情况下,女孩学习了 演绎地,从一般转向具体,更加注重 理论.

那么哪种方法最好呢? 对于水槽和堵塞的情况 - 第一个,原因如下:

  1. 如果只有工作水槽很重要,那么仅了解与该特定区域相关的内容就足够了。 当玛莎意识到自己缺乏知识时,她一定会想办法学习更多。
  2. 百科知识在现实情况下可能无法被激活,因为习惯还没有养成。 为了了解动作的顺序,有意义的不是阅读它们,而是执行它们。

让我们别管可怜的玛莎,继续学习过程吧。

编程:学还是做?

我们习惯于认为,为了在不熟悉的领域发展并成为专家,我们首先需要上大学或至少参加课程。 我们定期听取他们的意见并执行任务。 当我们手中拥有令人垂涎的文凭或证书时,我们立刻就迷失了,因为我们仍然不明白为什么我们需要这么多信息以及具体如何应用它。 如果您的下一个计划是撰写科学论文并与他们一起参加会议,那么这没有问题。 否则,就值得努力提高技能,即反复做特定的事情,尝试并犯错误,以便长期记住什么是最好不要做。

编程是“强硬的手”或“钻石眼”与广阔的前景齐头并进的领域之一。 如果你与经验丰富的开发人员交谈,你会听到一些勇敢的故事,其中一个人从小学习数学/物理/教学,然后厌倦了并转移到后端。 也会有没有受过高等教育的程序员! 首先,开发人员看重的不是证书或文凭,而是编写的程序、脚本和网站的数量和质量。

“但是等等!”,你反对道,“听起来很漂亮——拿去做吧!” 如果我以前没有编程过,我就很难自己编写程序! 对我来说,了解在哪里编写、如何使用编程语言与编译器进行基本对话非常重要。 这不像在谷歌上找到水管工的电话号码。”

这也有一个痛苦的事实。 一个不熟悉的方面导致另一个方面,进而导致第三个方面,很快这个过程就变成了魔术师的表演,他不断地拉出绑着的手帕,却无法将它们从高顶帽子中取出。 说实话,这个过程并不愉快;到了第五块“手帕”,无知的深度似乎已经接近马里亚纳海沟了。 另一种选择是关于 5 种类型的变量、10 种类型的循环和 3 个潜在有用的库的相同讲座。 可悲的是。

超级技能:我们建造、建造、最终建造

这个问题我们思考了很长时间。 我们博客上最后一篇文章的日期充分说明了我们思考了多长时间。 经过所有争论并尝试在 Stepik 上整合新方法,我们最终得到了......一个不同的网站。 作为 JetBrains Academy 的一部分,您可能已经听说过它。 我们将其称为 Hyperskill,内置基于项目的学习,将 Java 知识库链接到它,并获得了 EduTools 团队的支持。 现在还有更多细节。

来自 Stepik 的爱:Hyperskill 教育平台

具体目标。 我们提供项目“菜单”,即您可以在我们的帮助下编写的程序。 其中有井字棋、个人助理、区块链、搜索引擎等。 项目由5-6个阶段组成; 每个阶段的结果都是一个完成的程序。 “既然第一阶段已经解决了,为什么还需要其他阶段呢?” 谢谢你的提问。 每一步,程序都会变得更加实用或更快。 起初代码需要 10 行,但最终可能甚至无法容纳 500 行。

一点理论。 如果对编程一无所知,就不可能坐下来写 Hello World。 因此,在项目的每个阶段,您都会看到必须掌握哪些理论基础知识,最重要的是,从哪里获得它们。 基础知识也位于“知识图谱”部分的 Hyperskill 中。 如果项目的第一阶段不要求学生从文件中读取数据,那么他们可能无法继续。 他们稍后会自己学习,用于一般发展,或者他们在下一阶段需要它。

来自 Stepik 的爱:Hyperskill 教育平台

知识图谱。 它向您展示您已经学习过哪些主题以及它们之间的相互关系。 打开任何可爱的上衣。 您可以浏览一下,但我们建议您完成一些小任务,以确保这些信息适合您的头脑。 首先,该平台将为您提供测试,然后它将为您提供一些编程任务。 如果代码编译并通过测试,将其与参考解决方案进行比较,有时这有助于找到更优化的实现方式。 或者确保您的解决方案已经非常出色。

没什么。 我们正在等待“绿色”用户和经验丰富的开发人员。 如果你已经写过程序,没关系,我们不会强迫你加2+2或者重新翻一行。 为了立即达到所需的水平,在注册时,请注明您已经熟悉的内容并选择更难的项目。 不要害怕高估自己:如果发生任何事情,你总是可以回到知识图谱中被遗忘的主题。

来自 Stepik 的爱:Hyperskill 教育平台

工具。 在网站的特殊窗口中编写小段代码固然很棒,但真正的编程是从在开发环境中工作开始的(I整合 D才有发展 E环境)。 经验丰富的程序员不仅知道如何编写代码,还知道如何设计图形界面、将不同的文件组装到项目中、使用额外的开发工具,而 IDE 会负责其中的一些过程。 为什么不在学习编程的同时学习这些技能呢? 这就是 JetBrains 发挥作用的地方,它是带有预装 EduTools 插件的 IntelliJ IDEA Community Educational 特殊版本。 在这样的 IDE 中,您可以参加培训课程,检查已解决的问题,如果您忘记了某些内容,还可以查看项目提示。 如果这是您第一次听到“插件”或“IDE”这个词,请不要担心:我们会告诉您它是什么以及如何以最小的痛苦将其安装到您的计算机或笔记本电脑上。 了解理论,然后进入 IDE 并在那里完成项目的下一阶段。

截止日期。 他们一个也没有! 我们是谁来敲你的头并告诉你以什么速度编写程序? 当您喜欢编写代码并想要完成它时,您可以在今天或明天完成它。 为了自己的乐趣而开发。

错误。 每个人都承认它们,你在项目的某个阶段也承认它们,然后这个阶段就不会通过自动测试。 好吧,你必须自己找出问题所在。 我们可以告诉你错误在哪里,但这能教你如何仔细编写代码吗? 阅读 IDEA 的提示或有关 Bug 的理论主题,当程序最终起作用时,多巴胺的激增很可能很快就会到来。

一个明确的结果。 那么,你已经完成了初稿,下一步是什么? 享受你的劳动成果吧! 与朋友一起玩井字棋,同时吹嘘自己的成功。 将项目上传到 GitHub 以向未来的雇主展示,您自己编写描述,并在其中表明您应用的知识。 4-5 个复杂的项目,现在,适合初级开发人员的适度组合已准备就绪。

成长的机会。 假设您查看 Hyperskill,但没有看到任何重要主题或有用的项目。 让我们了解一下! 如果您的背景比知识图谱更广泛、更丰富,请通过以下形式给我们写信 贡献。 我们的团队将与您分享我们自己的提示和技巧,因此我们很乐意帮助您将您的知识转化为不同年龄和水平的用户可以理解的有用内容。 也许我们甚至会付钱,但这还不确定。

欢迎: hi.hyperskill.org 进来看看、尝试、建议、表扬和批评。 我们也在学习教你。

来源: habr.com

添加评论