作为一名二本计算机专业的教师,如何点亮学生的技能树

2022-06-15 17:06:32 +08:00
 bbsabc2

目前我们的计划是

1 后端 => Java -> SpringBoot 2 前端 => HTML5 ( js+css ) -> Vue 3 硬件 => C 语言 -> 数字电路 -> PCB 设计实现 -> 单片机 -> 物联网 4 人工智能 => Python -> python 高级( pyqt 、mysql 、django 、numpy 、pandas 、opencv )-> 人工智能 -> 机器学习 -> 深度学习

其他辅助课程 数据结构 MySQL Linux

我们的主要目的是培养的学生能够在毕业之后进入企业快速上手开展工作(说白了就是找到一个好工作)

各位大佬能否指点一二,看看技能树方面有哪些不太合适,需要增加或者删改的地方。

提前拜谢

13291 次点击
所在节点    程序员
164 条回复
Cerdore
2022-06-16 10:23:45 +08:00
楼主,推荐给你一个 cs 自学网站,收集了很多国外的好课。

国外 cs 确实教得好...
Cerdore
2022-06-16 10:24:26 +08:00
https://csdiy.wiki/ 忘了加地址了... 另外我想问问现在进三本教书是不是都得博士起步
xiaotianhu
2022-06-16 10:27:59 +08:00
去年在某几万人的大厂参与了校招。

很多 1 本的,一些基础知识都不知道。女生,简历写的也像模像样,结果随便一问 简直太水了。

给我最大的感受,计算机真是一门注重实践的课程。如果没有实践,你通过努力能把”知识点”被的很好,但是深层的原理,知识之间的联系,就不是靠背诵能掌握的,你得真的做一遍,才能感受到那种”意会”的感觉,悟了。

举个例子,tcp 的各种知识点背的很熟,但是问如何用 udp 实现可靠传输,大概就卡住说不明白了。很多同学的简历都没什么项目,做的东西更像是课后作业的水平。可能你会说,没有业务场景,没办法啊。我在小公司干了这么多年,当然能理解,我也有这个问题,所以想来大厂看看;但是就遇到有 nb 的同学,自己撸个轮子,写一个异步多线程的 webserver ,先不管能不能在生产环境用起来还是 github 有多少 star ,至少这个项目让他对知识的理解程度就更深入了。

写的多了还有一个好处我觉得更重要,你就知道哪些知识才是真正的”知识点”,是实实在在的能用起来的东西,而有些只是手册型知识,需要的时候去找一下就好了。
xiaotianhu
2022-06-16 10:32:09 +08:00
看了这么多回复还有一个感觉。
xiaotianhu
2022-06-16 10:35:27 +08:00
兴趣是最好的老师。
当年我上大学,机械专业的。参与了一个兴趣小组,天天自学
为了研究 CSS 一个样式,经常干到很晚。天天上课时候看 PHP ,给老师做项目挣钱,暑假去打工做系统挣钱

但是如果我学了计算机专业,我估计就完了。兴趣没了。
我认识的好几个同学,现在写代码混的都还可以的,都 不是计算机专业的。计算机专业没听说有干这行的,更没听说有厉害的。

当然我现在也很后悔上学的时候没多学点远离,现在时间很少了 还得研究网络,研究系统调度,要不然一个性能问题你就解决不明白。原理是重要的,是因为有场景有业务的驱动,我有实实在在的需求。
得想明白驱动力是什么,学生学这个有什么驱动力,这才是最重要的。
madlifer
2022-06-16 10:42:48 +08:00
从我本身而言,我觉的不要在大学阶段学习这么多技能性的东西。 计算机专业的学生并不是只有“程序员”一条路可以走,测试、产品、运维 都需要通识性的计算机课程来做支撑,而不需要编程、算法的技能。
oppoic
2022-06-16 10:47:54 +08:00
学校不是有教材吗?按教材来就可以啦

对了,冒昧问一句:计算机老师会这么多吗?我当年计算机老师打字都打不过我
wuxinling
2022-06-16 10:52:15 +08:00
这东西看学生重于老师,老师教好自己的那门课就行了,毕业的时候组织一下应届生和在校生交流一下,在校生自己会挑方向的
NizumaEiji
2022-06-16 10:56:01 +08:00
接项目给学生做 做完一起分钱...
金钱是第一驱动力(doge)
alphardex
2022-06-16 11:12:31 +08:00
让学生充分认识到兴趣是最好的老师就够了
至少我就是这么过来的
Stendan
2022-06-16 11:16:12 +08:00
同三本,庆幸自己上学的时候好好学了计算机基础,暑假参加学校的小项目学习(半个月到 1 个月,模拟项目),那时候还是 h5 、SSM 、Python (基本都是学校和机构合作开的),但是都免费学,随便报名,比如我当时已经熟练的 crud 了,感兴趣就参加了一个 python 基础班。虽然学校教的都非常浅,但还是让我长点见识,大部分时间还是自学,后来见识的多了,走路就越来越快了。工作中恰好用到 Python ,就尝试用 Python 解决,上学的时候看过了多门语言,后续自己学习又相对的有了些方法,可能我这个三本就这样,但一切的一切,都在学生自身,老师只要讲正确,点到为止即可。要么就只开一门课程,学精学细。
libook
2022-06-16 11:21:03 +08:00
想要让学生找到好工作,就得先研究好工作想找什么样的人才,不然目标和方案是脱节的。

个人的建议是先做职业生涯规划,我记得我上学的时候其实学校里就有这个的,只不过当时普遍老师和学生都不重视,毕业后才傻眼,很多学生根本不知道自己想干啥工作、未来想成长到什么程度、用什么方法让自己成长进步;甚至有些人工作几年之后才发现自己并不喜欢这份工作,或者发现以前走的路子根本不适合自己。远的可以暂时不谈,先让学生了解一下学校所提供的的专业出去之后目前有哪些就业方向,每个就业方向具体干什么工作,人才市场的供求情况是如何的,就业方向的发展前景如何;这样让学生树立一个短期或中期职业目标,然后再去考虑想达到这个目标需要哪些知识、技能。建议考虑一下邀请一些各职场上的人员来给学生们讲一讲相应工作的情况,学生可能也会比较感兴趣。

然后在专业课程方面,既然题主的标题突出了“技能树”,题主作为教师肯定是对这棵树比较了解的。
(非精确概括一下)计算机的知识是承上启下的,从数学知识、物理知识可以拓展出来计算机的体系结构、组成原理、算法、电路元器件,然后再衍生出编译原理、语言、网络、硬件平台等,后面才是应用层的技术——也就是题主罗列的那些课程。
确实基础课程很无聊,我上学的时候很多课程也没认真学,但顶不住面试官真的会问、工作深入了真的还要回去复习。学会了基础知识再学应用技术就会更轻松,因为自己理解其中的原理;反过来先学应用技术只能是照葫芦画瓢,自己一知半解死记硬背,有时候还会因为基础知识严重匮乏而记错。那么接下来就是如何安排这些基础课程,是放在应用课程前面还是拆解插入到对应应用知识的讲解过程中,如何讲得有趣又让学生受用,这个就是教师们需要持续研究的事情了吧。

应用课也需要一些应用方面的基础知识,比如 Web 开发领域至少得包括 Web 基本原理,举个例子就是绝大多面试官都会问用户在浏览器上输入一个网址并回车之后会发生什么事情,我做面试官的时候也经常会问应届生“HTTP 标准是由谁制定的”、“HTTP 、HTTPS 有啥区别”、“跨域是浏览器端的限制还是服务器端的限制”等基础问题,而且这些在工作中设计实施方案、解决问题都是会经常用到的。

信息源也比较重要,学校里学生可以看课本、课件,但这些远远不够。我面试过很多人,技术信息的第一来源是三方博客、公众号、B 站、抖音,先不管信息全不全,绝大多数都不是官方信息,实际上日常工作所用的技术大多都是有官方文档的,里面提供最新、最全、最准确的信息,学会看官方文档将能极大提高解决问题的能力。

基础课、应用课都搞定了之后,就是学习如何找工作了,比如究竟应该怎么准备简历和投简历,这个在 V 站已经有很多帖子讨论过了,也有很多人给出了很有价值的思路,你甚至可以做一些面试的实战演练,来让学生理解面试官是什么样的思维,各种情景可以有哪些应对策略。

题主来网上征求意见,说明题主是真心想把教育这件事做好,为学生负责,可敬,祝顺利。
HannibaI
2022-06-16 11:45:45 +08:00
无论如何,先给 LZ 负责任的态度点个赞,另外我觉得这些可以找浙大、杭电等的老师咨询一下,毕竟 v2 都是程序员而已,老师可以提供不同视角
RedBeanIce
2022-06-16 11:53:24 +08:00
@bbsabc2 我觉得把,老师可以尝试一下。一门课一门课的分析,如何好好的学习。

比如数据结构,我觉得比较好的学法是,先学一门语言的基础,然后就开始一行行代码的分析,,,数据结构与算法感觉就是基础。
先学一门语言的基础,花个把月?比如环境,if ,for ,双重 for ,数组,对象,等等的一些编码基础。(这里不涉及编译原理等等东西,纯粹的就是一门语言的语法基础与简单进阶,属于编码基础)
基础学完,就开始写数据结构,,数据结构说白了就是一大堆逻辑。处理数组与对象。

老师不用想着这么多如何解决,先把几个重要的东西分析一下如何讲?比如数据结构真的是基础。
直接学 Java-springboot ,些项目,感觉一点用都没有。
lewinlan
2022-06-16 12:13:54 +08:00
我支持楼主的方案。
首先考虑到学校档次比较低,讲太多原理性的东西收益不大,人也学不进去,不如多讲符合就业需求的技术。
其次,学校不是培训班,别把自己当保姆,这样各个领域都带学生了解一下挺好的,想学的人自己找自己感兴趣的方向深挖就行了。
最后分享一下我个人心得,有很多人是教也教不会的,心态放平,尽力就好,遇到*想学*的人再认真指导。
xiaohusky
2022-06-16 14:06:02 +08:00
能遇到您这样为学生考虑的老师,是三生有幸!!!
zyPro
2022-06-16 14:32:11 +08:00
@hubahuba 你这样说话合适吗,加狗头有用吗。
novolunt
2022-06-16 14:36:30 +08:00
学校应该是学基础吧,比如先有 java 后有 spring boot 。
后端的 golang 、rust 也不差呀。
如果说即能学技能又能学基础那铁定是 c 、rust 这类系统性语言
chinajik
2022-06-16 14:40:17 +08:00
公办三本 CS 专业 14 年毕业,也曾想过回老家当老师,有想过类似的问题,身边有不少成功的案例。
如果再让我回学校重修四年,以下几点我觉得重要

1. 理论基础:操作系统、编译原理、算法、数据结构、数据库
毕竟这可能是他们走上工作岗位后最后一次可以系统性学习计算机知识。这并不是害他们或者高估他们,这是专业工作者必须走的路。

2. 编程基础:Linux 基础、HTML/CSS/Javascript 基础、Java/SpringBoot 、es/mysql/redis 使用
我大学有幸老师有正儿八经教过,工作后一直受用吃老本

然后对于 2-3 年本科生涯来说,以上够喝一壶了。 看到楼主有涉及开始往硬件方面转,我只想说正常的学生没底子的吃不消。本科无论如何要打几年底子,毕竟你列的这些进培训机构还有人教,但是基础几乎再无机会了,而基础可能对于转研或者再教育都有帮助的,不学基础是伤害。
uiosun
2022-06-16 15:03:18 +08:00
Learn Game to Start?

可以参考国外的大学,我听过的有部分,就是从制作游戏入门,从而提升学生对于编写程序的兴趣。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/859822

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX